aboutsummaryrefslogtreecommitdiff
path: root/fs/afs/server.c
AgeCommit message (Collapse)AuthorFilesLines
2012-08-13workqueue: use mod_delayed_work() instead of cancel + queueTejun Heo1-8/+2
Convert delayed_work users doing cancel_delayed_work() followed by queue_delayed_work() to mod_delayed_work(). Most conversions are straight-forward. Ones worth mentioning are, * drivers/edac/edac_mc.c: edac_mc_workq_setup() converted to always use mod_delayed_work() and cancel loop in edac_mc_reset_delay_period() is dropped. * drivers/platform/x86/thinkpad_acpi.c: No need to remember whether watchdog is active or not. @fan_watchdog_active and related code dropped. * drivers/power/charger-manager.c: Seemingly a lot of delayed_work_pending() abuse going on here. [delayed_]work_pending() are unsynchronized and racy when used like this. I converted one instance in fullbatt_handler(). Please conver the rest so that it invokes workqueue APIs for the intended target state rather than trying to game work item pending state transitions. e.g. if timer should be modified - call mod_delayed_work(), canceled - call cancel_delayed_work[_sync](). * drivers/thermal/thermal_sys.c: thermal_zone_device_set_polling() simplified. Note that round_jiffies() calls in this function are meaningless. round_jiffies() work on absolute jiffies not delta delay used by delayed_work. v2: Tomi pointed out that __cancel_delayed_work() users can't be safely converted to mod_delayed_work(). They could be calling it from irq context and if that happens while delayed_work_timer_fn() is running, it could deadlock. __cancel_delayed_work() users are dropped. Signed-off-by: Tejun Heo <[email protected]> Acked-by: Henrique de Moraes Holschuh <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> Acked-by: Anton Vorontsov <[email protected]> Acked-by: David Howells <[email protected]> Cc: Tomi Valkeinen <[email protected]> Cc: Jens Axboe <[email protected]> Cc: Jiri Kosina <[email protected]> Cc: Doug Thompson <[email protected]> Cc: David Airlie <[email protected]> Cc: Roland Dreier <[email protected]> Cc: "John W. Linville" <[email protected]> Cc: Zhang Rui <[email protected]> Cc: Len Brown <[email protected]> Cc: "J. Bruce Fields" <[email protected]> Cc: Johannes Berg <[email protected]>
2011-01-14afs: add afs_wq and use it instead of the system workqueueTejun Heo1-6/+7
flush_scheduled_work() is going away. afs needs to make sure all the works it has queued have finished before being unloaded and there can be arbitrary number of pending works. Add afs_wq and use it as the flush domain instead of the system workqueue. Also, convert cancel_delayed_work() + flush_scheduled_work() to cancel_delayed_work_sync() in afs_mntpt_kill_timer(). Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: David Howells <[email protected]> Cc: [email protected] Signed-off-by: Linus Torvalds <[email protected]>
2010-06-01AFS: Fix possible null pointer dereference in afs_alloc_server()Denis Kirjanov1-2/+3
Fix a possible null pointer dereference in afs_alloc_server(): the server pointer is NULL if there was an allocation failure, and under such a condition, we can't dereference it in the _leave() statement. Signed-off-by: Denis Kirjanov <[email protected]> Signed-off-by: David Howells <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-10-31fs: replace NIPQUAD()Harvey Harrison1-5/+4
Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2007-10-17fs/afs/: possible cleanupsAdrian Bunk1-1/+1
This patch contains the following possible cleanups: - make the following needlessly global functions static: - rxrpc.c: afs_send_pages() - vlocation.c: afs_vlocation_queue_for_updates() - write.c: afs_writepages_region() - make the following needlessly global variables static: - mntpt.c: afs_mntpt_expiry_timeout - proc.c: afs_vlocation_states[] - server.c: afs_server_timeout - vlocation.c: afs_vlocation_timeout - vlocation.c: afs_vlocation_update_timeout - #if 0 the following unused function: - cell.c: afs_get_cell_maybe() - #if 0 the following unused variables: - callback.c: afs_vnode_update_timeout - cmservice.c: struct afs_cm_workqueue Signed-off-by: Adrian Bunk <[email protected]> Acked-by: David Howells <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-05-09AFS: AFS fixupsDavid Howells1-0/+3
Make some miscellaneous changes to the AFS filesystem: (1) Assert RCU barriers on module exit to make sure RCU has finished with callbacks in this module. (2) Correctly handle the AFS server returning a zero-length read. (3) Split out data zapping calls into one function (afs_zap_data). (4) Rename some afs_file_*() functions to afs_*() where they apply to non-regular files too. (5) Be consistent about the presentation of volume ID:vnode ID in debugging output. Signed-off-by: David Howells <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-04-26[AFS]: Add "directory write" support.David Howells1-0/+2
Add support for the create, link, symlink, unlink, mkdir, rmdir and rename VFS operations to the in-kernel AFS filesystem. Also: (1) Fix dentry and inode revalidation. d_revalidate should only look at state of the dentry. Revalidation of the contents of an inode pointed to by a dentry is now separate. (2) Fix afs_lookup() to hash negative dentries as well as positive ones. Signed-off-by: David Howells <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2007-04-26[AF_RXRPC]: Make the in-kernel AFS filesystem use AF_RXRPC.David Howells1-394/+230
Make the in-kernel AFS filesystem use AF_RXRPC instead of the old RxRPC code. Signed-off-by: David Howells <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2007-04-26[AFS]: Clean up the AFS sourcesDavid Howells1-30/+17
Clean up the AFS sources. Also remove references to AFS keys. RxRPC keys are used instead. Signed-off-by: David Howells <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2006-12-07[PATCH] affs: replace kmalloc+memset with kzallocYan Burman1-2/+1
Replace kmalloc+memset with kzalloc Signed-off-by: Yan Burman <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2006-06-26[PATCH] fs: use list_move()Akinobu Mita1-4/+2
This patch converts the combination of list_del(A) and list_add(A, B) to list_move(A, B) under fs/. Cc: Ian Kent <[email protected]> Acked-by: Joel Becker <[email protected]> Cc: Neil Brown <[email protected]> Cc: Hans Reiser <[email protected]> Cc: Urban Widmark <[email protected]> Acked-by: David Howells <[email protected]> Acked-by: Mark Fasheh <[email protected]> Signed-off-by: Akinobu Mita <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-04-16Linux-2.6.12-rc2Linus Torvalds1-0/+502
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!