Message ID | 20220613062202.29194-1-liqiong@nfschina.com (mailing list archive) |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | smackfs: check for allocation failure of kmalloc() | expand |
On 6/12/2022 11:22 PM, Li Qiong wrote: > As the possible failure of the kmalloc(), it should be better > to check it and print a warning message. The allocation is done with __GFP_NOFAIL, which assures it will not fail. > > Signed-off-by: Li Qiong <liqiong@nfschina.com> > --- > security/smack/smackfs.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c > index 4b58526450d4..0d11ba3cb4cd 100644 > --- a/security/smack/smackfs.c > +++ b/security/smack/smackfs.c > @@ -695,6 +695,11 @@ static void smk_cipso_doi(void) > __func__, __LINE__, rc); > > doip = kmalloc(sizeof(struct cipso_v4_doi), GFP_KERNEL | __GFP_NOFAIL); > + if (unlikely(!doip)) { > + printk(KERN_WARNING "%s:%d failed to allocate a memory for doip\n", > + __func__, __LINE__); > + return; > + } > doip->map.std = NULL; > doip->doi = smk_cipso_doi_value; > doip->type = CIPSO_V4_MAP_PASS;
在 2022年06月13日 22:53, Casey Schaufler 写道: > On 6/12/2022 11:22 PM, Li Qiong wrote: >> As the possible failure of the kmalloc(), it should be better >> to check it and print a warning message. > > The allocation is done with __GFP_NOFAIL, which assures > it will not fail. Thanks, my mistake. Drop this patch. > >> >> Signed-off-by: Li Qiong <liqiong@nfschina.com> >> --- >> security/smack/smackfs.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c >> index 4b58526450d4..0d11ba3cb4cd 100644 >> --- a/security/smack/smackfs.c >> +++ b/security/smack/smackfs.c >> @@ -695,6 +695,11 @@ static void smk_cipso_doi(void) >> __func__, __LINE__, rc); >> doip = kmalloc(sizeof(struct cipso_v4_doi), GFP_KERNEL | __GFP_NOFAIL); >> + if (unlikely(!doip)) { >> + printk(KERN_WARNING "%s:%d failed to allocate a memory for doip\n", >> + __func__, __LINE__); >> + return; >> + } >> doip->map.std = NULL; >> doip->doi = smk_cipso_doi_value; >> doip->type = CIPSO_V4_MAP_PASS;
diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c index 4b58526450d4..0d11ba3cb4cd 100644 --- a/security/smack/smackfs.c +++ b/security/smack/smackfs.c @@ -695,6 +695,11 @@ static void smk_cipso_doi(void) __func__, __LINE__, rc); doip = kmalloc(sizeof(struct cipso_v4_doi), GFP_KERNEL | __GFP_NOFAIL); + if (unlikely(!doip)) { + printk(KERN_WARNING "%s:%d failed to allocate a memory for doip\n", + __func__, __LINE__); + return; + } doip->map.std = NULL; doip->doi = smk_cipso_doi_value; doip->type = CIPSO_V4_MAP_PASS;
As the possible failure of the kmalloc(), it should be better to check it and print a warning message. Signed-off-by: Li Qiong <liqiong@nfschina.com> --- security/smack/smackfs.c | 5 +++++ 1 file changed, 5 insertions(+)