Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Andy Shevchenko wrote: > On Sat, Nov 28, 2015 at 8:58 PM, Brent Taylor wrote: > > Whats the status on this patch? I don't see it on patchwork anymore > > nor is it in any of the git trees I checked. > > > > You forget to use kvfree() instead of kfree() in core.c. > In addition to that, I think you can do like below. if (>fw == fw) *fw = vmalloc(fw_entry->size); else *fw = kmalloc(fw_entry->size, GFP_KERNEL); if (*fw == NULL) ret = -ENOMEM; else memcpy(*fw, fw_entry->data, fw_entry->size); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
On Sat, Nov 28, 2015 at 8:58 PM, Brent Taylor wrote: > Sorry, the first e-mail was sent via gmail and I forgot about sending > it in plain text mode. > > Whats the status on this patch? I don't see it on patchwork anymore > nor is it in any of the git trees I checked. > You forget to use kvfree() instead of kfree() in core.c. > Thanks, > Brent > > On Fri, Oct 16, 2015 at 12:10 AM, Brent Taylor wrote: >> Signed-off-by: Brent Taylor >> --- >> drivers/net/wireless/ath/ath6kl/init.c | 15 +++ >> 1 file changed, 11 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/net/wireless/ath/ath6kl/init.c >> b/drivers/net/wireless/ath/ath6kl/init.c >> index 6e473fa..2155739 100644 >> --- a/drivers/net/wireless/ath/ath6kl/init.c >> +++ b/drivers/net/wireless/ath/ath6kl/init.c >> @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char >> *filename, >> return ret; >> >> *fw_len = fw_entry->size; >> - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); >> - >> - if (*fw == NULL) >> - ret = -ENOMEM; >> + if (>fw == fw) { >> + *fw = vmalloc(fw_entry->size); >> + if (*fw == NULL) >> + ret = -ENOMEM; >> + else >> + memcpy(*fw, fw_entry->data, fw_entry->size); >> + } else { >> + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); >> + if (*fw == NULL) >> + ret = -ENOMEM; >> + } >> >> release_firmware(fw_entry); >> >> -- >> 2.6.1 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Sorry, the first e-mail was sent via gmail and I forgot about sending it in plain text mode. Whats the status on this patch? I don't see it on patchwork anymore nor is it in any of the git trees I checked. Thanks, Brent On Fri, Oct 16, 2015 at 12:10 AM, Brent Taylor wrote: > Signed-off-by: Brent Taylor > --- > drivers/net/wireless/ath/ath6kl/init.c | 15 +++ > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath6kl/init.c > b/drivers/net/wireless/ath/ath6kl/init.c > index 6e473fa..2155739 100644 > --- a/drivers/net/wireless/ath/ath6kl/init.c > +++ b/drivers/net/wireless/ath/ath6kl/init.c > @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char > *filename, > return ret; > > *fw_len = fw_entry->size; > - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); > - > - if (*fw == NULL) > - ret = -ENOMEM; > + if (>fw == fw) { > + *fw = vmalloc(fw_entry->size); > + if (*fw == NULL) > + ret = -ENOMEM; > + else > + memcpy(*fw, fw_entry->data, fw_entry->size); > + } else { > + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); > + if (*fw == NULL) > + ret = -ENOMEM; > + } > > release_firmware(fw_entry); > > -- > 2.6.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Sorry, the first e-mail was sent via gmail and I forgot about sending it in plain text mode. Whats the status on this patch? I don't see it on patchwork anymore nor is it in any of the git trees I checked. Thanks, Brent On Fri, Oct 16, 2015 at 12:10 AM, Brent Taylorwrote: > Signed-off-by: Brent Taylor > --- > drivers/net/wireless/ath/ath6kl/init.c | 15 +++ > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath6kl/init.c > b/drivers/net/wireless/ath/ath6kl/init.c > index 6e473fa..2155739 100644 > --- a/drivers/net/wireless/ath/ath6kl/init.c > +++ b/drivers/net/wireless/ath/ath6kl/init.c > @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char > *filename, > return ret; > > *fw_len = fw_entry->size; > - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); > - > - if (*fw == NULL) > - ret = -ENOMEM; > + if (>fw == fw) { > + *fw = vmalloc(fw_entry->size); > + if (*fw == NULL) > + ret = -ENOMEM; > + else > + memcpy(*fw, fw_entry->data, fw_entry->size); > + } else { > + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); > + if (*fw == NULL) > + ret = -ENOMEM; > + } > > release_firmware(fw_entry); > > -- > 2.6.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
On Sat, Nov 28, 2015 at 8:58 PM, Brent Taylorwrote: > Sorry, the first e-mail was sent via gmail and I forgot about sending > it in plain text mode. > > Whats the status on this patch? I don't see it on patchwork anymore > nor is it in any of the git trees I checked. > You forget to use kvfree() instead of kfree() in core.c. > Thanks, > Brent > > On Fri, Oct 16, 2015 at 12:10 AM, Brent Taylor wrote: >> Signed-off-by: Brent Taylor >> --- >> drivers/net/wireless/ath/ath6kl/init.c | 15 +++ >> 1 file changed, 11 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/net/wireless/ath/ath6kl/init.c >> b/drivers/net/wireless/ath/ath6kl/init.c >> index 6e473fa..2155739 100644 >> --- a/drivers/net/wireless/ath/ath6kl/init.c >> +++ b/drivers/net/wireless/ath/ath6kl/init.c >> @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char >> *filename, >> return ret; >> >> *fw_len = fw_entry->size; >> - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); >> - >> - if (*fw == NULL) >> - ret = -ENOMEM; >> + if (>fw == fw) { >> + *fw = vmalloc(fw_entry->size); >> + if (*fw == NULL) >> + ret = -ENOMEM; >> + else >> + memcpy(*fw, fw_entry->data, fw_entry->size); >> + } else { >> + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); >> + if (*fw == NULL) >> + ret = -ENOMEM; >> + } >> >> release_firmware(fw_entry); >> >> -- >> 2.6.1 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Andy Shevchenko wrote: > On Sat, Nov 28, 2015 at 8:58 PM, Brent Taylorwrote: > > Whats the status on this patch? I don't see it on patchwork anymore > > nor is it in any of the git trees I checked. > > > > You forget to use kvfree() instead of kfree() in core.c. > In addition to that, I think you can do like below. if (>fw == fw) *fw = vmalloc(fw_entry->size); else *fw = kmalloc(fw_entry->size, GFP_KERNEL); if (*fw == NULL) ret = -ENOMEM; else memcpy(*fw, fw_entry->data, fw_entry->size); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Signed-off-by: Brent Taylor --- drivers/net/wireless/ath/ath6kl/init.c | 15 +++ 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c index 6e473fa..2155739 100644 --- a/drivers/net/wireless/ath/ath6kl/init.c +++ b/drivers/net/wireless/ath/ath6kl/init.c @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char *filename, return ret; *fw_len = fw_entry->size; - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); - - if (*fw == NULL) - ret = -ENOMEM; + if (>fw == fw) { + *fw = vmalloc(fw_entry->size); + if (*fw == NULL) + ret = -ENOMEM; + else + memcpy(*fw, fw_entry->data, fw_entry->size); + } else { + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); + if (*fw == NULL) + ret = -ENOMEM; + } release_firmware(fw_entry); -- 2.6.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] ath6kl: Use vmalloc for loading firmware using api1 method
Signed-off-by: Brent Taylor--- drivers/net/wireless/ath/ath6kl/init.c | 15 +++ 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c index 6e473fa..2155739 100644 --- a/drivers/net/wireless/ath/ath6kl/init.c +++ b/drivers/net/wireless/ath/ath6kl/init.c @@ -673,10 +673,17 @@ static int ath6kl_get_fw(struct ath6kl *ar, const char *filename, return ret; *fw_len = fw_entry->size; - *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); - - if (*fw == NULL) - ret = -ENOMEM; + if (>fw == fw) { + *fw = vmalloc(fw_entry->size); + if (*fw == NULL) + ret = -ENOMEM; + else + memcpy(*fw, fw_entry->data, fw_entry->size); + } else { + *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); + if (*fw == NULL) + ret = -ENOMEM; + } release_firmware(fw_entry); -- 2.6.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/