[PATCH v3] staging: rtl8192u: null check the kzalloc

2019-07-30 Thread Navid Emamdoost
In rtl8192_init_priv_variable allocation for priv->pFirmware may fail, so a null check is necessary.priv->pFirmware is accessed later in rtl8192_adapter_start. I added the check and made appropriate changes to propagate the errno to the caller. --- Update v2: fixed style errors Update V3: fixed

Re: [PATCH v5 12/29] compat_ioctl: move drivers to compat_ptr_ioctl

2019-07-30 Thread David Miller
From: Arnd Bergmann Date: Tue, 30 Jul 2019 21:50:28 +0200 > Each of these drivers has a copy of the same trivial helper function to > convert the pointer argument and then call the native ioctl handler. > > We now have a generic implementation of that, so use it. > > Acked-by: Greg

RE: [PATCH v2] x86/hyper-v: Zero out the VP ASSIST PAGE to fix CPU offlining

2019-07-30 Thread Michael Kelley
From: Dexuan Cui Sent: Thursday, July 18, 2019 8:23 PM > > The VP ASSIST PAGE is an "overlay" page (see Hyper-V TLFS's Section > 5.2.1 "GPA Overlay Pages" for the details) and here is an excerpt: > > " > The hypervisor defines several special pages that "overlay" the guest's > Guest Physical

[PATCH v5 12/29] compat_ioctl: move drivers to compat_ptr_ioctl

2019-07-30 Thread Arnd Bergmann
Each of these drivers has a copy of the same trivial helper function to convert the pointer argument and then call the native ioctl handler. We now have a generic implementation of that, so use it. Acked-by: Greg Kroah-Hartman Acked-by: Michael S. Tsirkin Reviewed-by: Jarkko Sakkinen

[PATCH v6 42/57] staging: Remove dev_err() usage after platform_get_irq()

2019-07-30 Thread Stephen Boyd
We don't need dev_err() messages when platform_get_irq() fails now that platform_get_irq() prints an error message itself when something goes wrong. Let's remove these prints with a simple semantic patch. // @@ expression ret; struct platform_device *E; @@ ret = ( platform_get_irq(E, ...) |

Re: [PATCH v2] rtl8192_init_priv_variable: null check is missing for kzalloc

2019-07-30 Thread Greg KH
On Tue, Jul 30, 2019 at 09:30:58AM -0500, Navid Emamdoost wrote: > Allocation for priv->pFirmware may fail, so a null check is necessary. > priv->pFirmware is accessed later in rtl8192_adapter_start. I added the > check and made appropriate changes to propagate the errno to the caller. > >

[PATCH v2] rtl8192_init_priv_variable: null check is missing for kzalloc

2019-07-30 Thread Navid Emamdoost
Allocation for priv->pFirmware may fail, so a null check is necessary. priv->pFirmware is accessed later in rtl8192_adapter_start. I added the check and made appropriate changes to propagate the errno to the caller. Update: fixed style errors Signed-off-by: Navid Emamdoost ---

[PATCH] staging/octeon: Fix build error without CONFIG_NETDEVICES

2019-07-30 Thread YueHaibing
While do COMPILE_TEST build without CONFIG_NETDEVICES, we get Kconfig warning: WARNING: unmet direct dependencies detected for PHYLIB Depends on [n]: NETDEVICES [=n] Selected by [y]: - OCTEON_ETHERNET [=y] && STAGING [=y] && (CAVIUM_OCTEON_SOC && NETDEVICES [=n] || COMPILE_TEST [=y])

Re: [Linux-kernel-mentees][PATCH v4] staging: kpc2000: Convert put_page to put_user_page*()

2019-07-30 Thread Bharath Vedartham
On Tue, Jul 30, 2019 at 11:36:06AM +0200, Greg KH wrote: > On Tue, Jul 30, 2019 at 02:58:44PM +0530, Bharath Vedartham wrote: > > put_page() to put_user_page*() > > What does this mean? That must have been a mistake! I just wanted to forward this patch to the Linux-kernel-mentees mailing list.

Re: [Linux-kernel-mentees][PATCH v4] staging: kpc2000: Convert put_page to put_user_page*()

2019-07-30 Thread Greg KH
On Tue, Jul 30, 2019 at 02:58:44PM +0530, Bharath Vedartham wrote: > put_page() to put_user_page*() What does this mean? ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Re: [Linux-kernel-mentees][PATCH v4] staging: kpc2000: Convert put_page to put_user_page*()

2019-07-30 Thread Bharath Vedartham
put_page() to put_user_page*() Reply-To: In-Reply-To: <1564058658-3551-1-git-send-email-linux.b...@gmail.com> On Thu, Jul 25, 2019 at 06:14:18PM +0530, Bharath Vedartham wrote: [Forwarding patch to linux-kernel-mentees mailing list] > For pages that were retained via get_user_pages*(), release

Re: [PATCH] staging: rtl8723bs: os_dep: Remove function _rtw_regdomain_select

2019-07-30 Thread Greg Kroah-Hartman
On Thu, Jul 25, 2019 at 11:03:49PM +0530, Hariprasad Kelam wrote: > This function simply returns _regdom_rd . So replace this function > with actual code > > Signed-off-by: Hariprasad Kelam > --- > drivers/staging/rtl8723bs/os_dep/wifi_regd.c | 9 + > 1 file changed, 1 insertion(+), 8

Re: [PATCH v7 0/4] HEVC/H.265 stateless support for V4L2 and Cedrus

2019-07-30 Thread Hans Verkuil
On 7/27/19 11:57 AM, Paul Kocialkowski wrote: > Hi Hans, > > On Fri 26 Jul 19, 10:33, Hans Verkuil wrote: >> On 7/25/19 8:55 PM, Paul Kocialkowski wrote: >>> HEVC/H.265 stateless support for V4L2 and Cedrus >>> >>> This is early support for HEVC/H.265 stateless decoding in V4L2, >>> including

Re: [PATCH 01/22] staging: erofs: update source file headers

2019-07-30 Thread Gao Xiang
Hi Greg, On 2019/7/30 15:20, Greg Kroah-Hartman wrote: > On Mon, Jul 29, 2019 at 02:51:38PM +0800, Gao Xiang wrote: >> - Use the correct style for all SPDX License Identifiers; >> - Get rid of the unnecessary license boilerplate; >> - Use "GPL-2.0-only" instead of "GPL-2.0" suggested-by Stephen.

Re: [PATCH 01/22] staging: erofs: update source file headers

2019-07-30 Thread Greg Kroah-Hartman
On Mon, Jul 29, 2019 at 02:51:38PM +0800, Gao Xiang wrote: > - Use the correct style for all SPDX License Identifiers; > - Get rid of the unnecessary license boilerplate; > - Use "GPL-2.0-only" instead of "GPL-2.0" suggested-by Stephen. Note, either tag works just fine, they are identical. I'll

[PATCH v5 22/24] erofs: introduce the decompression frontend

2019-07-30 Thread Gao Xiang
This patch introduces the basic inplace fixed-sized output decompression implementation for erofs filesystem. In constant to fixed-sized input compression, it has fixed-sized capacity for each compressed cluster to contain compressed data with the following advantages: 1) improved storage

[PATCH v5 14/24] erofs: introduce superblock registration

2019-07-30 Thread Gao Xiang
In order to introducing shrinker solution for erofs, let's manage all mounted erofs instances at first. Signed-off-by: Gao Xiang --- fs/erofs/Makefile | 2 +- fs/erofs/internal.h | 13 + fs/erofs/super.c| 9 + fs/erofs/utils.c| 32

[PATCH v5 21/24] erofs: introduce LZ4 decompression inplace

2019-07-30 Thread Gao Xiang
compressed data will be usually loaded into last pages of the extent (the last page for 4k) for in-place decompression (more specifically, in-place IO), as ilustration below, start of compressed logical extent | end of this logical extent |

[PATCH v5 19/24] erofs: add erofs_allocpage()

2019-07-30 Thread Gao Xiang
This patch introduces an temporary _on-stack_ page pool to reuse the freed page directly as much as it can for better performance and release all pages at a time, it also slightly reduces the possibility of the potential memory allocation failure. Signed-off-by: Gao Xiang ---

[PATCH v5 12/24] erofs: introduce tagged pointer

2019-07-30 Thread Gao Xiang
Currently kernel has scattered tagged pointer usages hacked by hand in plain code, without a unique and portable functionset to highlight the tagged pointer itself and wrap these hacked code in order to clean up all over meaningless magic masks. This patch introduces simple generic methods to

[PATCH v5 18/24] erofs: introduce pagevec for decompression subsystem

2019-07-30 Thread Gao Xiang
For each physical cluster, there is a straight-forward way of allocating a fixed or variable-sized array to record the corresponding file pages for its decompression if we decide to decompress these pages asynchronously (eg. read-ahead case), however it will take variable-sized on-heap memory

[PATCH v5 20/24] erofs: introduce generic decompression backend

2019-07-30 Thread Gao Xiang
This patch adds decompression backend to EROFS, which supports uncompressed and LZ4 compressed data. For compressed data, it uses the following strategy: 1) If outputsize is very small (totally less than a threshold), decompress to the per-CPU buffer and do memcpy directly in order to avoid

[PATCH v5 23/24] erofs: introduce cached decompression

2019-07-30 Thread Gao Xiang
This patch adds strategies which can be selected by users in order to cache both incomplete ends of compressed physical clusters as a complement of in-place I/O in order to boost random read, but it costs more memory than the in-place I/O only. Signed-off-by: Gao Xiang --- fs/erofs/internal.h |

[PATCH v5 24/24] erofs: add document

2019-07-30 Thread Gao Xiang
This documents key features, usage, and on-disk design of erofs. Signed-off-by: Gao Xiang --- Documentation/filesystems/erofs.txt | 221 1 file changed, 221 insertions(+) create mode 100644 Documentation/filesystems/erofs.txt diff --git

[PATCH v5 13/24] erofs: add compression indexes support

2019-07-30 Thread Gao Xiang
This patch adds EROFS compression indexes support, including legacy and compacted 2/4B indexes. In addition, it introduces an iterable L2P mapping operation called 'z_erofs_map_blocks_iter'. Compared with 'erofs_map_blocks', it avoids a number of redundant 'release and regrab' processes if they

[PATCH v5 08/24] erofs: add namei functions

2019-07-30 Thread Gao Xiang
This commit adds functions that transfer names to inodes. Signed-off-by: Gao Xiang --- fs/erofs/namei.c | 247 +++ 1 file changed, 247 insertions(+) create mode 100644 fs/erofs/namei.c diff --git a/fs/erofs/namei.c b/fs/erofs/namei.c new file mode

[PATCH v5 06/24] erofs: support special inode

2019-07-30 Thread Gao Xiang
This patch adds to support special inode, such as block dev, char, socket, pipe inode. Signed-off-by: Gao Xiang --- fs/erofs/inode.c | 27 +-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/fs/erofs/inode.c b/fs/erofs/inode.c index

[PATCH v5 15/24] erofs: introduce erofs shrinker

2019-07-30 Thread Gao Xiang
This patch adds a dedicated shrinker targeting to free unneeded memory consumed by a number of erofs in-memory data structures. Like F2FS and UBIFS, it also adds: - sbi->umount_mutex to avoid races on shrinker and put_super; - sbi->shrinker_run_no to not revisit recently scanned objects.

[PATCH v5 07/24] erofs: add directory operations

2019-07-30 Thread Gao Xiang
This adds functions for directory, mainly readdir. Signed-off-by: Gao Xiang --- fs/erofs/dir.c | 147 + 1 file changed, 147 insertions(+) create mode 100644 fs/erofs/dir.c diff --git a/fs/erofs/dir.c b/fs/erofs/dir.c new file mode 100644 index

[PATCH v5 16/24] erofs: introduce workstation for decompression

2019-07-30 Thread Gao Xiang
This patch introduces another concept used by decompress subsystem called 'workstation'. It can be seen as a sparse array that stores pointers pointed to data structures related to the corresponding physical clusters. All lookups are protected by RCU read lock. Besides, reference count and

[PATCH v5 11/24] erofs: introduce xattr & posixacl support

2019-07-30 Thread Gao Xiang
This implements xattr and posixacl functionalities. 1) Inline and shared xattrs are introduced for flexibility. Specifically, if the same xattr is used for a large number of inodes or the size of a xattr is so large that unsuitable to inline, a shared xattr will be used instead in xattr

[PATCH v5 05/24] erofs: add inode operations

2019-07-30 Thread Gao Xiang
This adds core functions to get, read an inode. It adds statx support as well. Signed-off-by: Gao Xiang --- fs/erofs/inode.c | 291 +++ 1 file changed, 291 insertions(+) create mode 100644 fs/erofs/inode.c diff --git a/fs/erofs/inode.c

[PATCH v5 10/24] erofs: update Kconfig and Makefile

2019-07-30 Thread Gao Xiang
This commit adds Makefile and Kconfig for erofs, and updates Makefile and Kconfig files in the fs directory. Signed-off-by: Gao Xiang --- fs/Kconfig| 1 + fs/Makefile | 1 + fs/erofs/Kconfig | 36 fs/erofs/Makefile | 9 + 4 files

[PATCH v5 17/24] erofs: introduce per-CPU buffers implementation

2019-07-30 Thread Gao Xiang
This patch introduces per-CPU buffers in order for the upcoming generic decompression framework to use. Note that I tried to use in-kernel per-CPU buffer or per-CPU page approaches to clean up further, however noticeable performanace regression (about 2% for sequential read) was observed. Let's

[PATCH v5 00/24] erofs: promote erofs from staging

2019-07-30 Thread Gao Xiang
( Add more linuxfs folks... ) Hi, We'd like to hear if there are potential suggestions or maybe objections of EROFS upstreaming stuffs. If any, we still have time and we can improve it in this round. As related materials mentioned before, the goal of EROFS is to save extra storage space with

[PATCH v5 02/24] erofs: add erofs in-memory stuffs

2019-07-30 Thread Gao Xiang
- erofs_sb_info: contains erofs-specific in-memory information. - erofs_vnode: contains vfs_inode and other fs-specific information. same as super block, the only one in-memory definition exists. - erofs_map_blocks Logical to physical block mapping, used by erofs_map_blocks().

[PATCH v5 01/24] erofs: add on-disk layout

2019-07-30 Thread Gao Xiang
This commit adds the on-disk layout header file of erofs. On-disk format is compatible with erofs-staging added in 4.19. In addition, add EROFS_SUPER_MAGIC_V1 to magic.h. Signed-off-by: Gao Xiang --- fs/erofs/erofs_fs.h| 316 +

[PATCH v5 09/24] erofs: support tracepoint

2019-07-30 Thread Gao Xiang
Add basic tracepoints for ->readpage{,s}, ->lookup, ->destroy_inode, fill_inode and map_blocks. Signed-off-by: Gao Xiang --- include/trace/events/erofs.h | 241 +++ 1 file changed, 241 insertions(+) create mode 100644 include/trace/events/erofs.h diff --git

[PATCH v5 04/24] erofs: add raw address_space operations

2019-07-30 Thread Gao Xiang
This commit adds functions for meta and raw data, and also provides address_space_operations for raw data access. Signed-off-by: Gao Xiang --- fs/erofs/data.c | 423 1 file changed, 423 insertions(+) create mode 100644 fs/erofs/data.c diff

[PATCH v5 03/24] erofs: add super block operations

2019-07-30 Thread Gao Xiang
This commit adds erofs super block operations, including (u)mount, remount_fs, show_options, statfs, in addition to some private icache management functions. Signed-off-by: Gao Xiang --- fs/erofs/super.c | 437 +++ 1 file changed, 437 insertions(+)