On 18 July 2018 at 02:12, Eric Biggers wrote:
> Hi Krzysztof,
>
> On Tue, Jul 17, 2018 at 06:05:35PM +0200, Krzysztof Kozlowski wrote:
>> Hi,
>>
>> Kernel defines same polynomial for CRC-32 in few places.
>> This is unnecessary duplication of the same value. Also this might
>> be error-prone for f
For kexec_file loading, if kexec_buf.top_down is 'true', the memory which
is used to load kernel/initrd/purgatory is supposed to be allocated from
top to down. This is what we have been doing all along in the old kexec
loading interface and the kexec loading is still default setting in some
distrib
This function, being a variant of walk_system_ram_res() introduced in
commit 8c86e70acead ("resource: provide new functions to walk through
resources"), walks through a list of all the resources of System RAM
in reversed order, i.e., from higher to lower.
It will be used in kexec_file code.
Signe
The struct resource uses singly linked list to link siblings, implemented
by pointer operation. Replace it with list_head for better code readability.
Based on this list_head replacement, it will be very easy to do reverse
iteration on iomem_resource's sibling list in later patch.
Besides, type o
reparent_resources() is duplicated in arch/microblaze/pci/pci-common.c
and arch/powerpc/kernel/pci-common.c, so move it to kernel/resource.c
so that it's shared.
Reviewed-by: Andy Shevchenko
Signed-off-by: Baoquan He
Cc: Michal Simek
Cc: Benjamin Herrenschmidt
Cc: Paul Mackerras
Cc: Michael E
This patchset is doing:
1) Move reparent_resources() to kernel/resource.c to clean up duplicated
code in arch/microblaze/pci/pci-common.c and
arch/powerpc/kernel/pci-common.c .
2) Replace struct resource's sibling list from singly linked list to
list_head. Clearing out those pointer operat
Hi Krzysztof,
On Tue, Jul 17, 2018 at 06:05:35PM +0200, Krzysztof Kozlowski wrote:
> Hi,
>
> Kernel defines same polynomial for CRC-32 in few places.
> This is unnecessary duplication of the same value. Also this might
> be error-prone for future code - every driver will define the
> polynomial a
From: Todd Poynor
gasket_mmap_has_permissions() should return a boolean value.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/gasket/gasket_core.c
b
From: Todd Poynor
It is not an error for a device to not have a reset callback registered.
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/staging/gasket/gasket_core
From: Todd Poynor
Collapse together two checks and return immediately, avoid conditional
indentation for most of function code.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex_driver.c | 43 +---
1 file ch
From: Todd Poynor
When offset to be mapped matches both a BAR region and a coherent mapped
region return an error as intended, not the BAR index.
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Todd Poynor
Else after return is unnecessary and may cause static code checkers to
complain.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_page_table.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --gi
From: Todd Poynor
For sparse checking.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
Reviewed-by: Dmitry Torokhov
---
drivers/staging/gasket/apex_driver.c | 11 ++--
drivers/staging/gasket/gasket_core.c | 6 ++-
drivers/staging/gasket/gasket_core.h |
From: Todd Poynor
Return -ETIMEDOUT, not -EINVAL, on timeout, including callers.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex_driver.c | 8
drivers/staging/gasket/gasket_core.c | 2 +-
2 files changed, 5 insertions
From: Todd Poynor
Use kernel-style multi-line comment syntax.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex.h | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/gasket/apex.h b/drivers/st
From: Todd Poynor
Replace schedule_timeout() call with msleep() for simplicity.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/staging/gas
From: Todd Poynor
class_create() never returns NULL, and this driver should never return
PTR_ERR(NULL) anyway.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
Reviewed-by: Dmitry Torokhov
---
drivers/staging/gasket/gasket_core.c | 2 +-
1 file changed, 1 in
From: Todd Poynor
Convert from int return to bool.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex_driver.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/gasket/apex_driver.c
b/drivers
From: Todd Poynor
gasket_enable_dev code for enabling a gasket device with no physical PCI
device registered shouldn't be necessary.
Reported-by: Greg Kroah-Hartman
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 12 +---
1 file changed, 1 insertion(+), 11 deleti
From: Todd Poynor
Remove unneeded parentheses around subexpressions.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/gasket_core.
From: Todd Poynor
gasket_sysfs_create_mapping() return EBUSY if sysfs mapping already in
use, as a more appropriate error code than the current return of EINVAL,
which would indicate invalid parameters.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_sys
From: Todd Poynor
Use consistent kernel-style multi-line comment syntax.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/gasket
From: Todd Poynor
Remove unnecessary variable, pass constant param instead.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 5 +
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/staging/gaske
From: Todd Poynor
If device reset callback returns an error, error out at the gasket
level.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/driver
From: Todd Poynor
gasket_wait_with_reschedule() is a little more clear if we just return
directly when the waited-for condition is hit. This also allows the
following condition check to be removed and identation of the
conditionally-executed code to be reduced.
Reported-by: Dmitry Torokhov
Sig
From: Todd Poynor
Remove gasket_cdev_get_info(), use container_of() directly instead,
drop unnecessary NULL checks.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 26 --
1 file changed, 4 in
From: Todd Poynor
gasket_alloc_coherent_memory() extra parentheses in statement.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_page_table.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/g
From: Todd Poynor
gasket_mmap use PAGE_MASK, instead of performing math on PAGE_SIZE, for
simplicity and clarity.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
dif
From: Todd Poynor
Remove extraneous statement in gasket_config_coherent_allocator()
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_ioctl.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/stagi
From: Todd Poynor
Convert from int to bool return type for gasket page table functions
that return values used as booleans.
Reported-by: Guenter Roeck
Signed-off-by: Simon Que
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_page_table.c | 58 +++---
drivers/stagi
From: Todd Poynor
Take the global mutex on driver unregistration updates for proper
ordering of updates and consistent access procedures.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 4
1 file changed, 4 insertions(+)
diff --git a/drive
From: Todd Poynor
Various fixes mainly from the chromium review of the gasket and apex
drivers. More to come.
Todd Poynor (32):
staging: gasket: remove X86 Kconfig restriction
staging: gasket: fix typo in apex_enter_reset
staging: gasket: fix typo in gasket_core.h comments
staging: gask
From: Todd Poynor
If class_create() fails, remove the gasket driver from the global
registration table.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/g
From: Todd Poynor
Don't need a 64-bit retry counter.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.c | 4 ++--
drivers/staging/gasket/gasket_core.h | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git
From: Todd Poynor
Always allow root to open device for writing.
Drop special-casing of ioctl permissions for root vs. owner.
Reported-by: Dmitry Torokhov
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex_driver.c | 9 +
drivers/staging/gasket/gas
From: Todd Poynor
If gasket_sysfs_create_mapping() hits errors allocating the attribute
array, remove stale pointers to device info from the mapping object.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_sysfs.c | 2 ++
1 file changed, 2 insertions(+)
From: Todd Poynor
Tab replaced with space.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_page_table.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/gasket_page_table.c
b/drivers/staging/gasket/gasket_page_t
From: Todd Poynor
The gasket and apex drivers are to be used on other architectures
besides X86.
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/Kconfig b/drivers/staging/gasket/Kconfig
ind
From: Todd Poynor
Fix typo in log message.
Signed-off-by: Zhongze Hu
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/apex_driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/apex_driver.c
b/drivers/staging/gasket/apex_driver.c
index cca4c
From: Todd Poynor
Grammar fixup in gasket_core.h comments describing struct
gasket_interrupt_desc.
Signed-off-by: Todd Poynor
---
drivers/staging/gasket/gasket_core.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/gasket/gasket_core.h
b/drivers/staging/gas
On Tue, Jul 17, 2018 at 4:12 AM, Dan Carpenter wrote:
> On Tue, Jul 17, 2018 at 01:13:29PM +0300, Dan Carpenter wrote:
>> On Mon, Jul 16, 2018 at 07:09:06PM -0700, Todd Poynor wrote:
>> > From: Todd Poynor
>> >
>> > Return right away instead of break out of while and then return.
>> >
>>
>
> Btw,
On Tue, Jul 17, 2018 at 3:13 AM, Dan Carpenter wrote:
> On Mon, Jul 16, 2018 at 07:09:06PM -0700, Todd Poynor wrote:
>> From: Todd Poynor
>>
>> Return right away instead of break out of while and then return.
>>
>
> You could remove the (retries == max_retries) condition since that's
> always tru
On Tue, Jul 17, 2018 at 3:37 AM, Dan Carpenter wrote:
> On Mon, Jul 16, 2018 at 07:09:21PM -0700, Todd Poynor wrote:
>> From: Todd Poynor
>>
>> Else after return is unnecessary and may cause static code checkers to
>> complain.
>>
>> Reported-by: Guenter Roeck
>> Signed-off-by: Simon Que
>> Sig
On Tue, Jul 17, 2018 at 11:50 AM, Joe Perches wrote:
> On Tue, 2018-07-17 at 13:22 +0300, Dan Carpenter wrote:
>> On Mon, Jul 16, 2018 at 07:09:10PM -0700, Todd Poynor wrote:
>> > --- a/drivers/staging/gasket/apex_driver.c
>> > +++ b/drivers/staging/gasket/apex_driver.c
>> > @@ -630,13 +630,10 @@
On Tue, 2018-07-17 at 13:22 +0300, Dan Carpenter wrote:
> On Mon, Jul 16, 2018 at 07:09:10PM -0700, Todd Poynor wrote:
> > --- a/drivers/staging/gasket/apex_driver.c
> > +++ b/drivers/staging/gasket/apex_driver.c
> > @@ -630,13 +630,10 @@ static bool is_gcb_in_reset(struct gasket_dev
> > *gasket_d
On Tue, Jul 17, 2018 at 3:26 AM, Dan Carpenter wrote:
> On Mon, Jul 16, 2018 at 07:09:11PM -0700, Todd Poynor wrote:
>> @@ -629,7 +630,6 @@ static bool is_gcb_in_reset(struct gasket_dev
>> *gasket_dev)
>> */
>> static uint apex_ioctl_check_permissions(struct file *filp, uint cmd)
>> {
>> -
From: Haiyang Zhang
If out ring is full temporarily and receive completion cannot go out,
we may still need to reschedule napi if certain conditions are met.
Otherwise the napi poll might be stopped forever, and cause network
disconnect.
Fixes: 7426b1a51803 ("netvsc: optimize receive completions
Hi,
Kernel defines same polynomial for CRC-32 in few places.
This is unnecessary duplication of the same value. Also this might
be error-prone for future code - every driver will define the
polynomial again.
This is an attempt to unify definition of polynomial. Few obvious
hard-coded locations a
Do not define again the polynomial but use header with existing define.
Signed-off-by: Krzysztof Kozlowski
---
Not tested
It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW. Rest got just different
builds.
drivers/sta
Do not define again the polynomial but use header with existing define.
Signed-off-by: Krzysztof Kozlowski
---
Not tested
It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW. Rest got just different
builds.
drivers/cr
Allow other drivers and parts of kernel to use the same define for
CRC32 polynomial, instead of duplicating it in many places. This code
does not bring any functional changes, except moving existing code.
Signed-off-by: Krzysztof Kozlowski
---
include/linux/crc32poly.h | 20
Do not define again the polynomial but use header with existing define.
Signed-off-by: Krzysztof Kozlowski
---
Only Freescale FEC was tested
It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW. Rest got just different
bu
Header was defining CRCPOLY_LE/BE and CRC32C_POLY_LE but in fact all of
them are CRC-32 polynomials so use consistent naming.
Signed-off-by: Krzysztof Kozlowski
---
include/linux/crc32poly.h | 4 ++--
lib/crc32.c | 10 +-
lib/gen_crc32table.c | 4 ++--
3 files change
Do not define again the polynomial but use header with existing define.
Signed-off-by: Krzysztof Kozlowski
---
lib/decompress_bunzip2.c | 3 ++-
lib/xz/xz_crc32.c| 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/decompress_bunzip2.c b/lib/decompress_bunzip2.c
in
On Tue, Jul 17, 2018 at 04:25:36AM -0700, Todd Poynor wrote:
> On Tue, Jul 17, 2018 at 4:16 AM Greg Kroah-Hartman
> wrote:
> >
> > On Mon, Jul 16, 2018 at 07:08:54PM -0700, Todd Poynor wrote:
> > > From: Todd Poynor
> > >
> > > Various fixes mainly from the chromium review of the gasket and apex
On Tue, Jul 17, 2018 at 12:13:40PM +0300, Dan Carpenter wrote:
> > +static ssize_t sysfs_read(struct device *dev, char *buf,
> > + unsigned int addr_offset)
> > +{
> > + struct axis_fifo *fifo = dev_get_drvdata(dev);
> > + unsigned int read_val;
> > + unsigned int strlen;
On Tue, Jul 17, 2018 at 4:16 AM Greg Kroah-Hartman
wrote:
>
> On Mon, Jul 16, 2018 at 07:08:54PM -0700, Todd Poynor wrote:
> > From: Todd Poynor
> >
> > Various fixes mainly from the chromium review of the gasket and apex
> > drivers. More to come.
>
> I think you lost the reviewed-by tags that
On Mon, Jul 16, 2018 at 07:08:54PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Various fixes mainly from the chromium review of the gasket and apex
> drivers. More to come.
I think you lost the reviewed-by tags that the v1 series had, why?
thanks,
greg k-h
__
On Mon, Jul 16, 2018 at 07:08:54PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Various fixes mainly from the chromium review of the gasket and apex
> drivers. More to come.
What changed from v1?
You have to list it somewhere...
thanks,
greg k-h
_
On Tue, Jul 17, 2018 at 01:13:29PM +0300, Dan Carpenter wrote:
> On Mon, Jul 16, 2018 at 07:09:06PM -0700, Todd Poynor wrote:
> > From: Todd Poynor
> >
> > Return right away instead of break out of while and then return.
> >
>
Btw, I wasn't going to complain about this but since Greg is being e
Trace points are much more efficient than debug messages for extensive
tracing and could be conveniently enabled / disabled dynamically, hence
let's replace debug messages with the trace points.
Signed-off-by: Dmitry Osipenko
---
Changelog:
v2:
- Use __assign_str() for copying of HW sub
On Mon, Jul 16, 2018 at 07:09:24PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Instead of math on PAGE_SIZE.
>
The commit message is sort of distinct from the first line. The first
line is like a title, not the start of a sentence. On like marc.info
when you're looking at patches, the S
On Mon, Jul 16, 2018 at 07:09:21PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Else after return is unnecessary and may cause static code checkers to
> complain.
>
> Reported-by: Guenter Roeck
> Signed-off-by: Simon Que
> Signed-off-by: Todd Poynor
> ---
> drivers/staging/gasket/gasket
On Mon, Jul 16, 2018 at 07:09:11PM -0700, Todd Poynor wrote:
> @@ -629,7 +630,6 @@ static bool is_gcb_in_reset(struct gasket_dev *gasket_dev)
> */
> static uint apex_ioctl_check_permissions(struct file *filp, uint cmd)
> {
> - struct gasket_dev *gasket_dev = filp->private_data;
> fmod
On Mon, Jul 16, 2018 at 07:09:10PM -0700, Todd Poynor wrote:
> --- a/drivers/staging/gasket/apex_driver.c
> +++ b/drivers/staging/gasket/apex_driver.c
> @@ -630,13 +630,10 @@ static bool is_gcb_in_reset(struct gasket_dev
> *gasket_dev)
> static uint apex_ioctl_check_permissions(struct file *filp,
On Mon, Jul 16, 2018 at 07:09:06PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Return right away instead of break out of while and then return.
>
You could remove the (retries == max_retries) condition since that's
always true now and pull that code in one tab. You could do it in one
pat
On Mon, Jul 16, 2018 at 07:09:05PM -0700, Todd Poynor wrote:
> From: Todd Poynor
>
> Replace schedule_timeout() call with msleep().
>
Why does it matter? I genuinely don't know the rules here. The commit
message should normally say if there is a user visible effect or if it's
just a clean up
This version is much much better.
On Sun, Jul 15, 2018 at 12:34:28PM -0400, Jacob Feder wrote:
> +static ssize_t sysfs_write(struct device *dev, const char *buf,
> +size_t count, unsigned int addr_offset)
> +{
> + struct axis_fifo *fifo = dev_get_drvdata(dev);
> + u
68 matches
Mail list logo