summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-26btrfs: zoned: introduce physical_map to btrfs_block_groupNaohiro Aota
We will use a block group's physical location to track active zones and finish fully written zones in the following commits. Since the zone activation is done in the extent allocation context which already holding the tree locks, we can't query the chunk tree for the physical locations. So, copy the location info into a block group and use it for activation. Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: load active zone information from devicesNaohiro Aota
The ZNS specification defines a limit on the number of zones that can be in the implicit open, explicit open or closed conditions. Any zone with such condition is defined as an active zone and correspond to any zone that is being written or that has been only partially written. If the maximum number of active zones is reached, we must either reset or finish some active zones before being able to chose other zones for storing data. Load queue_max_active_zones() and track the number of active zones left on the device. Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: finish superblock zone once no space left for new SBNaohiro Aota
If there is no more space left for a new superblock in a superblock zone, then it is better to ZONE_FINISH the zone and frees up the active zone count. Since btrfs_advance_sb_log() can now issue REQ_OP_ZONE_FINISH, we also need to convert it to return int for the error case. Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: locate superblock position using zone capacityNaohiro Aota
sb_write_pointer() returns the write position of next superblock. For READ, we need a previous location. When the pointer is at the head, the previous one is the last one of the other zone. Calculate the last one's position from zone capacity. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: consider zone as full when no more SB can be writtenNaohiro Aota
We cannot write beyond zone capacity. So, we should consider a zone as "full" when the write pointer goes beyond capacity - the size of super info. Also, take this opportunity to replace a subtle duplicated code with a loop and fix a typo in comment. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: tweak reclaim threshold for zone capacityNaohiro Aota
With the introduction of zone capacity, the range [capacity, length] is always zone unusable. Counting this region as a reclaim target will cause reclaiming too early. Reclaim block groups based on bytes that can be usable after resetting. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: calculate free space from zone capacityNaohiro Aota
Now that we introduced capacity in a block group, we need to calculate free space using the capacity instead of the length. Thus, bytes we account capacity - alloc_pointer as free, and account bytes [capacity, length] as zone unusable. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: move btrfs_free_excluded_extents out of btrfs_calc_zone_unusableNaohiro Aota
btrfs_free_excluded_extents() is not neccessary for btrfs_calc_zone_unusable() and it makes btrfs_calc_zone_unusable() difficult to reuse. Move it out and call btrfs_free_excluded_extents() in proper context. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: zoned: load zone capacity information from devicesNaohiro Aota
The ZNS specification introduces the concept of a Zone Capacity. A zone capacity is an additional per-zone attribute that indicates the number of usable logical blocks within each zone, starting from the first logical block of each zone. It is always smaller or equal to the zone size. With the SINGLE profile, we can set a block group's "capacity" as the same as the underlying zone's Zone Capacity. We will limit the allocation not to exceed in a following commit. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: enable defrag for subpage caseQu Wenruo
With the new infrastructure which has taken subpage into consideration, now we should be safe to allow defrag to work for subpage case. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: remove the old infrastructureQu Wenruo
Now the old infrastructure can all be removed, defrag Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: use defrag_one_cluster() to implement btrfs_defrag_file()Qu Wenruo
The function defrag_one_cluster() is able to defrag one range well enough, we only need to do preparation for it, including: - Clamp and align the defrag range - Exclude invalid cases - Proper inode locking The old infrastructures will not be removed in this patch, as it would be too noisy to review. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: introduce helper to defrag one clusterQu Wenruo
This new helper, defrag_one_cluster(), will defrag one cluster (at most 256K): - Collect all initial targets - Kick in readahead when possible - Call defrag_one_range() on each initial target With some extra range clamping. - Update @sectors_defragged parameter This involves one behavior change, the defragged sectors accounting is no longer as accurate as old behavior, as the initial targets are not consistent. We can have new holes punched inside the initial target, and we will skip such holes later. But the defragged sectors accounting doesn't need to be that accurate anyway, thus I don't want to pass those extra accounting burden into defrag_one_range(). Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: introduce helper to defrag a rangeQu Wenruo
A new helper, defrag_one_range(), is introduced to defrag one range. This function will mostly prepare the needed pages and extent status for defrag_one_locked_target(). As we can only have a consistent view of extent map with page and extent bits locked, we need to re-check the range passed in to get a real target list for defrag_one_locked_target(). Since defrag_collect_targets() will call defrag_lookup_extent() and lock extent range, we also need to teach those two functions to skip extent lock. Thus new parameter, @locked, is introduced to skip extent lock if the caller has already locked the range. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: introduce helper to defrag a contiguous prepared rangeQu Wenruo
A new helper, defrag_one_locked_target(), introduced to do the real part of defrag. The caller needs to ensure both page and extents bits are locked, and no ordered extent exists for the range, and all writeback is finished. The core defrag part is pretty straight-forward: - Reserve space - Set extent bits to defrag - Update involved pages to be dirty Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: introduce helper to collect target file extentsQu Wenruo
Introduce a helper, defrag_collect_targets(), to collect all possible targets to be defragged. This function will not consider things like max_sectors_to_defrag, thus caller should be responsible to ensure we don't exceed the limit. This function will be the first stage of later defrag rework. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: factor out page preparation into a helperQu Wenruo
In cluster_pages_for_defrag(), we have complex code block inside one for() loop. The code block is to prepare one page for defrag, this will ensure: - The page is locked and set up properly. - No ordered extent exists in the page range. - The page is uptodate. This behavior is pretty common and will be reused by later defrag rework. So factor out the code into its own helper, defrag_prepare_one_page(), for later usage, and cleanup the code by a little. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: replace hard coded PAGE_SIZE with sectorsizeQu Wenruo
When testing subpage defrag support, I always find some strange inode nbytes error, after a lot of debugging, it turns out that defrag_lookup_extent() is using PAGE_SIZE as size for lookup_extent_mapping(). Since lookup_extent_mapping() is calling __lookup_extent_mapping() with @strict == 1, this means any extent map smaller than one page will be ignored, prevent subpage defrag to grab a correct extent map. There are quite some PAGE_SIZE usage in ioctl.c, but most of them are correct usages, and can be one of the following cases: - ioctl structure size check We want ioctl structure to be contained inside one page. - real page operations The remaining cases in defrag_lookup_extent() and check_defrag_in_cache() will be addressed in this patch. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: also check PagePrivate for subpage cases in ↵Qu Wenruo
cluster_pages_for_defrag() In function cluster_pages_for_defrag() we have a window where we unlock page, either start the ordered range or read the content from disk. When we re-lock the page, we need to make sure it still has the correct page->private for subpage. Thus add the extra PagePrivate check here to handle subpage cases properly. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: defrag: pass file_ra_state instead of file to btrfs_defrag_file()Qu Wenruo
Currently btrfs_defrag_file() accepts both "struct inode" and "struct file" as parameter. We can easily grab "struct inode" from "struct file" using file_inode() helper. The reason why we need "struct file" is just to re-use its f_ra. Change this to pass "struct file_ra_state" parameter, so that it's more clear what we really want. Since we're here, also add some comments on the function btrfs_defrag_file(). Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: rename and switch to bool btrfs_chunk_readonlyAnand Jain
btrfs_chunk_readonly() checks if the given chunk is writeable. It returns 1 for readonly, and 0 for writeable. So the return argument type bool shall suffice instead of the current type int. Also, rename btrfs_chunk_readonly() to btrfs_chunk_writeable() as we check if the bg is writeable, and helps to keep the logic at the parent function simpler to understand. Signed-off-by: Anand Jain <anand.jain@oracle.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: reflink: initialize return value to 0 in btrfs_extent_same()Sidong Yang
Fix a warning reported by smatch that ret could be returned without initialized. The dedupe operations are supposed to to return 0 for a 0 length range but the caller does not pass olen == 0. To keep this behaviour and also fix the warning initialize ret to 0. Reviewed-by: Filipe Manana <fdmanana@suse.com> Signed-off-by: Sidong Yang <realwakka@gmail.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26btrfs: subpage: pack all subpage bitmaps into a larger bitmapQu Wenruo
Currently we use u16 bitmap to make 4k sectorsize work for 64K page size. But this u16 bitmap is not large enough to contain larger page size like 128K, nor is space efficient for 16K page size. To handle both cases, here we pack all subpage bitmaps into a larger bitmap, now btrfs_subpage::bitmaps[] will be the ultimate bitmap for subpage usage. Each sub-bitmap will has its start bit number recorded in btrfs_subpage_info::*_start, and its bitmap length will be recorded in btrfs_subpage_info::bitmap_nr_bits. All subpage bitmap operations will be converted from using direct u16 operations to bitmap operations, with above *_start calculated. For 64K page size with 4K sectorsize, this should not cause much difference. While for 16K page size, we will only need 1 unsigned long (u32) to store all the bitmaps, which saves quite some space. Furthermore, this allows us to support larger page size like 128K and 258K. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
2021-10-26staging: r8188eu: core: remove the goto from rtw_IOL_accquire_xmit_frameSaurav Girepunje
Remove the goto statement from rtw_IOL_accquire_xmit_frame(). In this function goto can be replace by return statement. As on goto label exit, function only return it is not performing any cleanup. Avoiding goto will improve the function readability. Remove the assignment of NULL to local variable xmit_frame just before return of function. As function return, local variable will be not available on memory. So assigning a NULL value to local variable just before function return does not required. Signed-off-by: Saurav Girepunje <saurav.girepunje@gmail.com> Link: https://lore.kernel.org/r/YXd8QdhiNX3B1nqe@Sauravs-MacBook-Air.local Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: r8188eu: core: remove goto statementSaurav Girepunje
Remove the goto statement from rtw_do_join(). In this function goto can be replace by return statement. As on goto label exit, function only return it is not performing any cleanup. Avoiding goto will improve the function readability. Signed-off-by: Saurav Girepunje <saurav.girepunje@gmail.com> Link: https://lore.kernel.org/r/YXafzp5F8T7/+tk2@Sauravs-MacBook-Air.local Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL7230InitTable` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL7230InitTable> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/4e78c4628ba75d9793bd8a60d69a1b0cc4d2a073.1635171519.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL2230PowerTable` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL2230PowerTable> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/69eb06ced0d039b238c1ab6d3fb70b5ee1288a8a.1635171519.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL7230InitTableAMode` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL7230InitTableAMode> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/bd97b801861fac2168625c3e4ea1f97b9960e962.1635171519.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL7230ChannelTable2` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL7230ChannelTable2> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/055bde0a3206573209b757a22ab150c02f50f007.1635171519.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL7230ChannelTable1` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL7230ChannelTable1> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/bd3e987e975add4a4c1ce6f679d2b0c2b8ff05d9.1635171519.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL7230ChannelTable0` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL7230ChannelTable0> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/c05a9a1928e84cbbf375f1bfb2dd2ba31438c842.1635171518.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL2230ChannelTable1` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL2230ChannelTable1> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/18e1857c02edd1dbc81ef7e5b00e42e7cbce4710.1635171518.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: vt6655: Rename `dwAL2230ChannelTable0` arrayKarolina Drobnik
To align with the kernel coding style, remove the type from the variable name and do not use CamelCase. Fix issue detected by checkpatch.pl: CHECK: Avoid CamelCase: <dwAL2230ChannelTable0> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com> Link: https://lore.kernel.org/r/6232fd38f5e803dc01d528a76dd16fcce74ff9bd.1635171518.git.karolinadrobnik@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: r8712u: fix control-message timeoutJohan Hovold
USB control-message timeouts are specified in milliseconds and should specifically not vary with CONFIG_HZ. Fixes: 2865d42c78a9 ("staging: r8712u: Add the new driver to the mainline kernel") Cc: stable@vger.kernel.org # 2.6.37 Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Johan Hovold <johan@kernel.org> Link: https://lore.kernel.org/r/20211025120910.6339-3-johan@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26staging: rtl8192u: fix control-message timeoutsJohan Hovold
USB control-message timeouts are specified in milliseconds and should specifically not vary with CONFIG_HZ. Fixes: 8fc8598e61f6 ("Staging: Added Realtek rtl8192u driver to staging") Cc: stable@vger.kernel.org # 2.6.33 Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Johan Hovold <johan@kernel.org> Link: https://lore.kernel.org/r/20211025120910.6339-2-johan@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-26ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCIGeert Uytterhoeven
All configuration symbols for AMD Audio ACP conponents depend on X86 && PCI, except for SND_SOC_AMD_ACP_COMMON. Add a dependency on X86 && PCI to SND_SOC_AMD_ACP_COMMON, to prevent asking the user about AMD Audio ACP support when configuring a kernel without X86 or PCI support. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/30fcedce513186bf89f1f2655b665298250fdc66.1635260849.git.geert+renesas@glider.be Signed-off-by: Mark Brown <broonie@kernel.org>
2021-10-26ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && ↵Geert Uytterhoeven
PCI && I2C If not all of CONFIG_X86, CONFIG_PCI, and CONFIG_I2C are set: WARNING: unmet direct dependencies detected for SND_SOC_AMD_MACH_COMMON Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && X86 && PCI [=y] && I2C [=y] Selected by [y]: - SND_SOC_AMD_LEGACY_MACH [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] - SND_SOC_AMD_SOF_MACH [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] As SND_SOC_AMD_MACH_COMMON depends on X86 && PCI && I2C, all symbols selecting it should depend on X86 && PCI && I2C, too. Fixes: 9d8a7be88b3365e4 ("ASoC: amd: acp: Add legacy sound card support for Chrome audio") Fixes: 9f84940f5004e1d2 ("ASoC: amd: acp: Add SOF audio support on Chrome board") Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/dfb03bd33117e26f3f04ce227bb28095109b3d80.1635260849.git.geert+renesas@glider.be Signed-off-by: Mark Brown <broonie@kernel.org>
2021-10-26ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMONGeert Uytterhoeven
The build only descends into sound/soc/amd/acp/ if CONFIG_SND_SOC_AMD_ACP_COMMON=y. Hence all later config symbols should depend on SND_SOC_AMD_ACP_COMMON, to prevent asking the user about config symbols for driver code that won't be build anyway. Fixes: 623621a9f9e1a2f4 ("ASoC: amd: Add common framework to support I2S on ACP SOC") Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/53d1d63bed1865293e6f5085ead21cdbb068fb15.1635260849.git.geert+renesas@glider.be Signed-off-by: Mark Brown <broonie@kernel.org>
2021-10-26drm/msm/dp: fix missing #includeArnd Bergmann
Some randconfig builds fail when drm/drm_bridge.h is not included implicitly in this file: drivers/gpu/drm/msm/dp/dp_parser.c:279:25: error: implicit declaration of function 'devm_drm_panel_bridge_add' [-Werror,-Wimplicit-function-declaration] parser->panel_bridge = devm_drm_panel_bridge_add(dev, panel); Fixes: 4b296d15b355 ("drm/msm/dp: Allow attaching a drm_panel") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20211026083254.3396322-1-arnd@kernel.org Signed-off-by: Rob Clark <robdclark@chromium.org>
2021-10-26drm/msm/dpu: Remove commit and its uses in dpu_crtc_set_crc_source()Nathan Chancellor
Clang warns: drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c:162:6: error: variable 'commit' is uninitialized when used here [-Werror,-Wuninitialized] if (commit) ^~~~~~ drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c:106:32: note: initialize the variable 'commit' to silence this warning struct drm_crtc_commit *commit; ^ = NULL 1 error generated. The assignment and use of commit in the main body of dpu_crtc_set_crc_source() were removed from v1 to v2 but the call to drm_crtc_commit_put() at the end was not. Do that now so there is no more warning. Fixes: 78d9b458cc21 ("drm/msm/dpu: Add CRC support for DPU") Link: https://github.com/ClangBuiltLinux/linux/issues/1493 Reported-by: "kernelci.org bot" <bot@kernelci.org> Signed-off-by: Nathan Chancellor <nathan@kernel.org> Link: https://lore.kernel.org/r/20211026142435.3606413-1-nathan@kernel.org Signed-off-by: Rob Clark <robdclark@chromium.org>
2021-10-26fs: remove leftover comments from mandatory locking removalJeff Layton
Stragglers from commit f7e33bdbd6d1 ("fs: remove mandatory file locking support"). Signed-off-by: Jeff Layton <jlayton@kernel.org>
2021-10-26Merge tag 'qcom-arm64-defconfig-for-5.16' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/defconfigs Qualcomm ARM64 defconfig updates for v5.16 The major change here is the disabling of the firmware loades user space fallback, this is done as arm64 is the only platform with this flag enabled and as a result doesn't play nice with standard distributions. It then enables the new limits driver, which controls the hardware based thermal mitigation on a range of Qualcomm platforms. The prima/pronto WiFi and Bluetooth drivers are enabled to ensure these features works out of the box, now that the last details in the dts are landed. The new driver for acquiring sleep stats is enabled to facilitate the various efforts on getting these platforms into low power mode. Lastly the base SC7280 drivers needed to simply boot this platform are enabled. * tag 'qcom-arm64-defconfig-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: arm64: defconfig: Enable Qualcomm LMH driver arm64: defconfig: Enable Qualcomm prima/pronto drivers arm64: defconfig: Enable Sleep stats driver arm64: defconfig: Enable QTI SC7280 pinctrl, gcc and interconnect arm64: defconfig: Disable firmware sysfs fallback Link: https://lore.kernel.org/r/20211026134953.1204327-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-26Merge tag 'qcom-dts-for-5.16-2' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt Qualcomm DTS more changes for v5.16 The multi-purpose-pin (MPP) driver is finally migrated to use hierarchical IRQ domains, so this bring the associated changes. The remainder of the changes are correcting binding issues, primarily found through DT validation. * tag 'qcom-dts-for-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (26 commits) ARM: dts: qcom: fix typo in IPQ8064 thermal-sensor node ARM: dts: qcom: fix thermal zones naming ARM: dts: qcom: fix flash node naming for RB3011 ARM: dts: qcom: correct mmc node naming ARM: dts: qcom: fix memory and mdio nodes naming for RB3011 dt-bindings: arm: qcom: Fix Nexus 4 vendor prefix ARM: dts: ipq4019-ap.dk01.1-c1: add device compatible in the dts dt-bindings: arm: qcom-ipq4019: add missing device compatible ARM: dts: qcom: apq8026-lg-lenok: rename board vendor dt-bindings: arm: qcom: rename vendor of apq8026-lenok ARM: dts: qcom: sdx55: Drop '#clock-cells' from QMP PHY node ARM: dts: qcom: mdm9615: fix memory node for Sierra Wireless WP8548 ARM: dts: qcom-pma8084: add interrupt controller properties ARM: dts: qcom-pm8941: add interrupt controller properties ARM: dts: qcom-pm8841: add interrupt controller properties ARM: dts: qcom-msm8660: add interrupt controller properties ARM: dts: qcom-mdm9615: add interrupt controller properties ARM: dts: qcom-apq8064: add interrupt controller properties ARM: dts: qcom-apq8060-dragonboard: fix mpps state names ARM: dts: qcom-mdm9615: add gpio-ranges to mpps node, fix its name ... Link: https://lore.kernel.org/r/20211026135855.1205262-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-26Merge tag 'samsung-dt64-5.16-2' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt Samsung DTS ARM64 changes for v5.16, part two 1. Add chassis-type property. 2. Add ChipID node to ExynosAutov9 DTSI. * tag 'samsung-dt64-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: arm64: dts: exynos: add chipid node for exynosautov9 SoC arm64: dts: exynos: add 'chassis-type' property Link: https://lore.kernel.org/r/20211026094709.75692-4-krzysztof.kozlowski@canonical.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-26docs: deprecated.rst: Clarify open-coded arithmetic with literalsLen Baker
Although using literals for size calculation in allocator arguments may be harmless due to compiler warnings in case of overflows, it is better to refactor the code to avoid the use of open-coded arithmetic. So, clarify the preferred way in these cases. Suggested-by: Kees Cook <keescook@chromium.org> Signed-off-by: Len Baker <len.baker@gmx.com> Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org> Link: https://lore.kernel.org/r/20210925143455.21221-1-len.baker@gmx.com Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-10-26scripts: documentation-file-ref-check: fix bpf selftests pathMauro Carvalho Chehab
tools/testing/selftests/bpf/test_bpftool_synctypes.py use relative patches on the top of BPFTOOL_DIR: BPFTOOL_DIR = os.path.join(LINUX_ROOT, 'tools/bpf/bpftool') Change the script to automatically convert: testing/selftests/bpf -> bpf/bpftool In order to properly check the files used by such script. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/49b765cbac6ccd22d627573154806ec9389d60f0.1634629094.git.mchehab+huawei@kernel.org Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-10-26scripts: documentation-file-ref-check: ignore hidden filesMauro Carvalho Chehab
There's a warning there from a .gitignore file: tools/perf/.gitignore: Documentation/doc.dep This is not really a cross-reference type of warning, so no need to report it. In a matter of fact, it doesn't make sense at all to even parse hidden files, as some text editors may create such files for their own usage. So, just ignore everything that matches this pattern: /\.* Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/dd0125a931b4fecf8fab6be8aa527faa18f78e43.1634629094.git.mchehab+huawei@kernel.org Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-10-26coding-style.rst: trivial: fix location of driver model macrosTrevor Woerner
The dev_printk()-like functions moved to include/linux/dev_print.h in commit af628aae8640 ("device.h: move dev_printk()-like functions to dev_printk.h"). Signed-off-by: Trevor Woerner <twoerner@gmail.com> Reviewed-by: Shuah Khan <skhan@linuxfoundation.org> Reviewed-by: Miguel Ojeda <ojeda@kernel.org> Link: https://lore.kernel.org/r/20210423184012.39300-1-twoerner@gmail.com Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-10-26MAINTAINERS: drop obsolete file pattern in SDHCI DRIVER sectionLukas Bulwahn
Commit 5c67aa59bd8f ("mmc: sdhci-pci: Remove dead code (struct sdhci_pci_data et al)") removes ./include/linux/mmc/sdhci-pci-data.h; so, there is no further file that matches 'include/linux/mmc/sdhci*'. Hence, ./scripts/get_maintainer.pl --self-test=patterns complains: warning: no file matches F: include/linux/mmc/sdhci* Drop this obsolete file pattern in SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) DRIVER. Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20211022054740.25222-1-lukas.bulwahn@gmail.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2021-10-26mmc: sdhci-esdhc-imx: add NXP S32G2 supportChester Lin
Support the SDHCI controller found on NXP S32G2 platform. The new flag ESDHC_FLAG_SKIP_ERR004536 is used because the hardware erratum bit is not applicable for S32G2. Signed-off-by: Chester Lin <clin@suse.com> Link: https://lore.kernel.org/r/20211021071333.32485-3-clin@suse.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>