From: "J. Bruce Fields" <bfields@fieldses.org>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: linux-nfs@vger.kernel.org
Subject: Re: [PATCH 018/100] nfsd: fail module init on reply cache init failure
Date: Mon, 28 Jan 2008 13:32:50 -0500 [thread overview]
Message-ID: <20080128183250.GD16785@fieldses.org> (raw)
In-Reply-To: <D938EB81-E5CD-40D4-B302-738F561CF7BE@oracle.com>
On Mon, Jan 28, 2008 at 01:03:23PM -0500, Chuck Lever wrote:
> On Jan 25, 2008, at 6:15 PM, J. Bruce Fields wrote:
>> If the reply cache initialization fails due to a kmalloc failure,
>> currently we try to soldier on with a reduced (or nonexistant) reply
>> cache.
>>
>> Better to just fail immediately: the failure is then much easier to
>> understand and debug, and it could save us complexity in some later
>> code. (But actually, it doesn't help currently because the cache is
>> also turned off in some odd failure cases; we should probably find a
>> better way to handle those failure cases some day.)
>>
>> Fix some minor style problems while we're at it, and rename
>> nfsd_cache_init() to remove the need for a comment describing it.
>>
>> Acked-by: NeilBrown <neilb@suse.de>
>> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
>> ---
>> fs/nfsd/nfscache.c | 28 +++++++++++++---------------
>> fs/nfsd/nfsctl.c | 11 +++++++----
>> include/linux/nfsd/cache.h | 4 ++--
>> 3 files changed, 22 insertions(+), 21 deletions(-)
>>
>> diff --git a/fs/nfsd/nfscache.c b/fs/nfsd/nfscache.c
>> index 578f2c9..92cb5ae 100644
>> --- a/fs/nfsd/nfscache.c
>> +++ b/fs/nfsd/nfscache.c
>> @@ -44,17 +44,18 @@ static int nfsd_cache_append(struct svc_rqst
>> *rqstp, struct kvec *vec);
>> */
>> static DEFINE_SPINLOCK(cache_lock);
>>
>> -void
>> -nfsd_cache_init(void)
>> +int
>> +nfsd_reply_cache_init(void)
>
> I'm surprised this got by the style police.
Hmm. checkpatch.pl doesn't seem to catch that.
Anyway, fair enough, fixed, and...
>> void
>> -nfsd_cache_shutdown(void)
>> +nfsd_reply_cache_shutdown(void)
>
> Likewise.
... also fixed. Thanks.
--b.
next prev parent reply other threads:[~2008-01-28 18:32 UTC|newest]
Thread overview: 158+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-25 23:15 nfs server patches for 2.6.25 J. Bruce Fields
2008-01-25 23:15 ` [PATCH 001/100] nfsd4: probe callback channel only once J. Bruce Fields
2008-01-25 23:15 ` [PATCH 002/100] nfsd: move callback rpc_client creation into separate thread J. Bruce Fields
2008-01-25 23:15 ` [PATCH 003/100] Fix incorrect assignment J. Bruce Fields
2008-01-25 23:15 ` [PATCH 004/100] knfsd: fix broken length check in nfs4idmap.c J. Bruce Fields
2008-01-25 23:15 ` [PATCH 005/100] SUNRPC: Prevent length underflow in read_flush() J. Bruce Fields
2008-01-25 23:15 ` [PATCH 006/100] SUNRPC: Use unsigned string lengths in xdr_decode_string_inplace J. Bruce Fields
2008-01-25 23:15 ` [PATCH 007/100] NLM: Fix sign of length of NLM variable length strings J. Bruce Fields
2008-01-25 23:15 ` [PATCH 008/100] NFSD: Use unsigned length argument for decode_filename J. Bruce Fields
2008-01-25 23:15 ` [PATCH 009/100] NFSD: File name length signage in nfsd request argument structures J. Bruce Fields
2008-01-25 23:15 ` [PATCH 010/100] NFSD: Adjust filename length argument of nfsd_lookup J. Bruce Fields
2008-01-25 23:15 ` [PATCH 011/100] NFSD: Use unsigned length argument for decode_pathname J. Bruce Fields
2008-01-25 23:15 ` [PATCH 012/100] NFSD: Fix mixed sign comparison in nfs3svc_decode_symlinkargs J. Bruce Fields
2008-01-25 23:15 ` [PATCH 013/100] NFSD: Path name length signage in nfsd request argument structures J. Bruce Fields
2008-01-25 23:15 ` [PATCH 014/100] knfsd: fix cache.c comment J. Bruce Fields
2008-01-25 23:15 ` [PATCH 015/100] nfsd: Fix handling of negative lengths in read_buf() J. Bruce Fields
2008-01-25 23:15 ` [PATCH 016/100] knfsd: cleanup nfsd4 properly on module init failure J. Bruce Fields
2008-01-25 23:15 ` [PATCH 017/100] nfsd: cleanup nfsd module initialization cleanup J. Bruce Fields
2008-01-25 23:15 ` [PATCH 018/100] nfsd: fail module init on reply cache init failure J. Bruce Fields
2008-01-25 23:15 ` [PATCH 019/100] knfsd: cache unregistration needn't return error J. Bruce Fields
2008-01-25 23:16 ` [PATCH 020/100] nfsd: select CONFIG_PROC_FS in nfsv4 and gss server cases J. Bruce Fields
2008-01-25 23:16 ` [PATCH 021/100] nfsd: fail init on /proc/fs/nfs/exports creation failure J. Bruce Fields
2008-01-25 23:16 ` [PATCH 022/100] nfsd: move cache proc (un)registration to separate function J. Bruce Fields
2008-01-25 23:16 ` [PATCH 023/100] knfsd: allow cache_register to return error on failure J. Bruce Fields
2008-01-25 23:16 ` [PATCH 024/100] nfsd: move nfsd/auth.h into fs/nfsd J. Bruce Fields
2008-01-25 23:16 ` [PATCH 025/100] nfsd: minor fs/nfsd/auth.h cleanup J. Bruce Fields
2008-01-25 23:16 ` [PATCH 026/100] nfsd4: kill some unneeded setclientid comments J. Bruce Fields
2008-01-25 23:16 ` [PATCH 027/100] nfsd: eliminate final bogus case from setclientid logic J. Bruce Fields
2008-01-25 23:16 ` [PATCH 028/100] nfsd: uniquify cl_confirm values J. Bruce Fields
2008-01-25 23:16 ` [PATCH 029/100] nfsd4: kill unnecessary same_name() in setclientid_confirm J. Bruce Fields
2008-01-25 23:16 ` [PATCH 030/100] nfsd4: remove unnecessary cl_verifier check from setclientid_confirm J. Bruce Fields
2008-01-25 23:16 ` [PATCH 031/100] nfsd4: kill unneeded cl_confirm check J. Bruce Fields
2008-01-25 23:16 ` [PATCH 032/100] nfsd: fix encode_entryplus_baggage() indentation J. Bruce Fields
[not found] ` <1201303040-7779-33-git-send-email-bfields@citi.!umich.edu>
[not found] ` <1201303040-7779-33-git-send-email-bfields@citi.! umich.edu>
2008-01-25 23:16 ` [PATCH 033/100] nfsd4: make current_clientid local J. Bruce Fields
2008-01-25 23:16 ` [PATCH 034/100] nfsd4: miscellaneous nfs4state.c style fixes J. Bruce Fields
2008-01-25 23:16 ` [PATCH 035/100] nfsd4: recognize callback channel failure earlier J. Bruce Fields
2008-01-25 23:16 ` [PATCH 036/100] lockd: fix reference count leaks in async locking case J. Bruce Fields
2008-01-25 23:16 ` [PATCH 037/100] nfsd4: fix bad seqid on lock request incompatible with open mode J. Bruce Fields
2008-01-25 23:16 ` [PATCH 038/100] nfsd: Allow AIX client to read dir containing mountpoints J. Bruce Fields
2008-01-25 23:16 ` [PATCH 039/100] lockd: fix a leak in nlmsvc_testlock asynchronous request handling J. Bruce Fields
2008-01-25 23:16 ` [PATCH 040/100] nfsd: allow root to set uid and gid on create J. Bruce Fields
2008-01-25 23:16 ` [PATCH 041/100] nfsd: fix rsi_cache reference count leak J. Bruce Fields
2008-01-25 23:16 ` [PATCH 042/100] knfsd: change mailing list for nfsd in MAINTAINERS J. Bruce Fields
2008-01-25 23:16 ` [PATCH 043/100] sunrpc: gss: simplify rsi_parse logic J. Bruce Fields
2008-01-25 23:16 ` [PATCH 044/100] nfsd4: clean up access_valid, deny_valid checks J. Bruce Fields
2008-01-25 23:16 ` [PATCH 045/100] Leak in nlmsvc_testlock for async GETFL case J. Bruce Fields
2008-01-25 23:16 ` [PATCH 046/100] svcrpc: ensure gss DESTROY tokens free contexts from cache J. Bruce Fields
2008-01-25 23:16 ` [PATCH 047/100] svc: Add an svc transport class J. Bruce Fields
2008-01-25 23:16 ` [PATCH 048/100] svc: Make svc_sock the tcp/udp transport J. Bruce Fields
2008-01-25 23:16 ` [PATCH 049/100] svc: Change the svc_sock in the rqstp structure to a transport J. Bruce Fields
2008-01-25 23:16 ` [PATCH 050/100] svc: Add a max payload value to the transport J. Bruce Fields
2008-01-25 23:16 ` [PATCH 051/100] svc: Move sk_sendto and sk_recvfrom to svc_xprt_class J. Bruce Fields
2008-01-25 23:16 ` [PATCH 052/100] svc: Add transport specific xpo_release function J. Bruce Fields
2008-01-25 23:16 ` [PATCH 053/100] svc: Add per-transport delete functions J. Bruce Fields
2008-01-25 23:16 ` [PATCH 054/100] svc: Add xpo_prep_reply_hdr J. Bruce Fields
2008-01-25 23:16 ` [PATCH 055/100] svc: Add a transport function that checks for write space J. Bruce Fields
2008-01-25 23:16 ` [PATCH 056/100] svc: Move close processing to a single place J. Bruce Fields
2008-01-25 23:16 ` [PATCH 057/100] svc: Add xpo_accept transport function J. Bruce Fields
2008-01-25 23:16 ` [PATCH 058/100] svc: Remove unnecessary call to svc_sock_enqueue J. Bruce Fields
2008-01-25 23:16 ` [PATCH 059/100] svc: Move connection limit checking to its own function J. Bruce Fields
2008-01-25 23:16 ` [PATCH 060/100] svc: Add a generic transport svc_create_xprt function J. Bruce Fields
2008-01-25 23:16 ` [PATCH 061/100] svc: Change services to use new svc_create_xprt service J. Bruce Fields
2008-01-25 23:16 ` [PATCH 062/100] svc: Change sk_inuse to a kref J. Bruce Fields
2008-01-25 23:16 ` [PATCH 063/100] svc: Move sk_flags to the svc_xprt structure J. Bruce Fields
2008-01-25 23:16 ` [PATCH 064/100] svc: Move sk_server and sk_pool to svc_xprt J. Bruce Fields
2008-01-25 23:16 ` [PATCH 065/100] svc: Make close transport independent J. Bruce Fields
2008-01-25 23:16 ` [PATCH 066/100] svc: Move sk_reserved to svc_xprt J. Bruce Fields
2008-01-25 23:16 ` [PATCH 067/100] svc: Make the enqueue service transport neutral and export it J. Bruce Fields
2008-01-25 23:16 ` [PATCH 068/100] svc: Make svc_send transport neutral J. Bruce Fields
2008-01-25 23:16 ` [PATCH 069/100] svc: Change svc_sock_received to svc_xprt_received and export it J. Bruce Fields
2008-01-25 23:16 ` [PATCH 070/100] svc: Move accept call to svc_xprt_received to common code J. Bruce Fields
2008-01-25 23:16 ` [PATCH 071/100] svc: Remove sk_lastrecv J. Bruce Fields
2008-01-25 23:16 ` [PATCH 072/100] svc: Move the authinfo cache to svc_xprt J. Bruce Fields
2008-01-25 23:16 ` [PATCH 073/100] svc: Make deferral processing xprt independent J. Bruce Fields
2008-01-25 23:16 ` [PATCH 074/100] svc: Move the sockaddr information to svc_xprt J. Bruce Fields
2008-01-25 23:16 ` [PATCH 075/100] svc: Make svc_sock_release svc_xprt_release J. Bruce Fields
2008-01-25 23:16 ` [PATCH 076/100] svc: Make svc_recv transport neutral J. Bruce Fields
2008-01-25 23:16 ` [PATCH 077/100] svc: Make svc_age_temp_sockets svc_age_temp_transports J. Bruce Fields
2008-01-25 23:16 ` [PATCH 078/100] svc: Move create logic to common code J. Bruce Fields
2008-01-25 23:16 ` [PATCH 079/100] svc: Removing remaining references to rq_sock in rqstp J. Bruce Fields
2008-01-25 23:17 ` [PATCH 080/100] svc: Make svc_check_conn_limits xprt independent J. Bruce Fields
2008-01-25 23:17 ` [PATCH 081/100] svc: Move the xprt independent code to the svc_xprt.c file J. Bruce Fields
2008-01-25 23:17 ` [PATCH 082/100] svc: Add transport hdr size for defer/revisit J. Bruce Fields
2008-01-25 23:17 ` [PATCH 083/100] svc: Add /proc/sys/sunrpc/transport files J. Bruce Fields
2008-01-25 23:17 ` [PATCH 084/100] svc: Add svc API that queries for a transport instance J. Bruce Fields
2008-01-25 23:17 ` [PATCH 085/100] knfsd: Support adding transports by writing portlist file J. Bruce Fields
2008-01-25 23:17 ` [PATCH 086/100] svc: Add svc_xprt_names service to replace svc_sock_names J. Bruce Fields
2008-01-25 23:17 ` [PATCH 087/100] rdma: SVCRMDA Header File J. Bruce Fields
2008-01-25 23:17 ` [PATCH 088/100] rdma: SVCRDMA Transport Module J. Bruce Fields
2008-01-25 23:17 ` [PATCH 089/100] rdma: SVCRDMA Core Transport Services J. Bruce Fields
2008-01-25 23:17 ` [PATCH 090/100] rdma: SVCRDMA recvfrom J. Bruce Fields
2008-01-25 23:17 ` [PATCH 091/100] rdma: SVCRDMA sendto J. Bruce Fields
2008-01-25 23:17 ` [PATCH 092/100] rdma: ONCRPC RDMA protocol marshalling J. Bruce Fields
2008-01-25 23:17 ` [PATCH 093/100] rdma: makefile J. Bruce Fields
2008-01-25 23:17 ` [PATCH 094/100] SUNRPC: spin svc_rqst initialization to its own function J. Bruce Fields
2008-01-25 23:17 ` [PATCH 095/100] SUNRPC: export svc_sock_update_bufs J. Bruce Fields
2008-01-25 23:17 ` [PATCH 096/100] NLM: Convert lockd to use kthreads J. Bruce Fields
2008-01-25 23:17 ` [PATCH 097/100] NLM: have nlm_shutdown_hosts kill off all NLM RPC tasks J. Bruce Fields
2008-01-25 23:17 ` [PATCH 098/100] knfsd: don't bother mapping putrootfh enoent to eperm J. Bruce Fields
2008-01-25 23:17 ` [PATCH 099/100] lockd: minor log message fix J. Bruce Fields
2008-01-25 23:17 ` [PATCH 100/100] nfsd: more careful input validation in nfsctl write methods J. Bruce Fields
2008-01-25 23:55 ` [PATCH 097/100] NLM: have nlm_shutdown_hosts kill off all NLM RPC tasks Jeff Layton
[not found] ` <20080125185548.5363f046-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-01-26 0:31 ` J. Bruce Fields
2008-01-26 1:02 ` Jeff Layton
2008-01-26 1:19 ` Trond Myklebust
[not found] ` <1201310387.4150.21.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-01-28 15:11 ` Jeff Layton
2008-01-28 20:17 ` [PATCH 039/100] lockd: fix a leak in nlmsvc_testlock asynchronous request handling Chuck Lever
2008-01-28 20:28 ` Oleg Drokin
2008-01-28 20:04 ` [PATCH 038/100] nfsd: Allow AIX client to read dir containing mountpoints Chuck Lever
2008-01-28 20:54 ` J. Bruce Fields
2008-02-08 20:07 ` Peter Staubach
2008-02-08 21:03 ` J. Bruce Fields
2008-02-08 21:25 ` Frank Filz
2008-02-08 21:26 ` Peter Staubach
2008-02-08 21:46 ` J. Bruce Fields
2008-02-11 20:26 ` Peter Staubach
2008-01-28 19:46 ` [PATCH 036/100] lockd: fix reference count leaks in async locking case Chuck Lever
2008-01-28 20:44 ` J. Bruce Fields
2008-01-28 20:47 ` Oleg Drokin
[not found] ` <B0E92DA2-92DD-4637-B265-57B0D6D0D761-SOTZviwpzew/JUsKyNonYw@public.gmane.org>
2008-01-28 21:09 ` J. Bruce Fields
2008-01-28 19:39 ` [PATCH 034/100] nfsd4: miscellaneous nfs4state.c style fixes Chuck Lever
2008-01-28 20:24 ` J. Bruce Fields
2008-01-28 17:24 ` [PATCH 024/100] nfsd: move nfsd/auth.h into fs/nfsd Chuck Lever
2008-01-28 18:13 ` J. Bruce Fields
2008-01-28 19:40 ` [PATCH 022/100] nfsd: move cache proc (un)registration to separate function Chuck Lever
2008-01-28 21:31 ` J. Bruce Fields
2008-01-28 19:40 ` [PATCH 021/100] nfsd: fail init on /proc/fs/nfs/exports creation failure Chuck Lever
2008-01-28 21:20 ` J. Bruce Fields
2008-01-28 18:07 ` [PATCH 020/100] nfsd: select CONFIG_PROC_FS in nfsv4 and gss server cases Chuck Lever
2008-01-28 18:28 ` J. Bruce Fields
2008-01-28 21:12 ` Chuck Lever
2008-01-28 21:48 ` J. Bruce Fields
2008-02-01 16:40 ` Chuck Lever
2008-02-01 21:01 ` J. Bruce Fields
2008-02-04 21:29 ` Chuck Lever
2008-02-04 22:15 ` J. Bruce Fields
2008-02-04 23:17 ` Chuck Lever
2008-02-04 23:24 ` J. Bruce Fields
2008-01-28 18:03 ` [PATCH 018/100] nfsd: fail module init on reply cache init failure Chuck Lever
2008-01-28 18:32 ` J. Bruce Fields [this message]
2008-01-28 18:00 ` [PATCH 015/100] nfsd: Fix handling of negative lengths in read_buf() Chuck Lever
2008-01-28 20:15 ` J. Bruce Fields
2008-01-28 21:46 ` Chuck Lever
2008-01-28 22:14 ` J. Bruce Fields
2008-01-28 23:16 ` Chuck Lever
2008-01-28 23:31 ` J. Bruce Fields
2008-01-28 17:40 ` [PATCH 003/100] Fix incorrect assignment Chuck Lever
2008-01-28 20:07 ` J. Bruce Fields
2008-01-28 21:22 ` Chuck Lever
2008-01-28 17:35 ` [PATCH 001/100] nfsd4: probe callback channel only once Chuck Lever
2008-01-28 18:48 ` J. Bruce Fields
2008-01-28 21:14 ` Chuck Lever
2008-01-28 21:39 ` J. Bruce Fields
2008-01-28 21:55 ` Chuck Lever
2008-01-26 0:15 ` nfs server patches not in 2.6.25 J. Bruce Fields
2008-01-27 20:42 ` nfs server patches for 2.6.25 Simon Holm Thøgersen
2008-01-27 22:10 ` J. Bruce Fields
2008-01-28 3:15 ` J. Bruce Fields
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080128183250.GD16785@fieldses.org \
--to=bfields@fieldses.org \
--cc=chuck.lever@oracle.com \
--cc=linux-nfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox