1. 07 Sep, 2023 3 commits
    • Steven Rostedt (Google)'s avatar
      tracing: Have tracing_max_latency inc the trace array ref count · 7d660c9b
      Steven Rostedt (Google) authored
      The tracing_max_latency file points to the trace_array max_latency field.
      For an instance, if the file is opened and the instance is deleted,
      reading or writing to the file will cause a use after free.
      
      Up the ref count of the trace_array when tracing_max_latency is opened.
      
      Link: https://lkml.kernel.org/r/20230907024803.666889383@goodmis.org
      Link: https://lore.kernel.org/all/1cb3aee2-19af-c472-e265-05176fe9bd84@huawei.com/
      
      Cc: stable@vger.kernel.org
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Zheng Yejian <zhengyejian1@huawei.com>
      Fixes: 8530dec6 ("tracing: Add tracing_check_open_get_tr()")
      Tested-by: default avatarLinux Kernel Functional Testing <lkft@linaro.org>
      Tested-by: default avatarNaresh Kamboju <naresh.kamboju@linaro.org>
      Signed-off-by: default avatarSteven Rostedt (Google) <rostedt@goodmis.org>
      7d660c9b
    • Steven Rostedt (Google)'s avatar
      tracing: Increase trace array ref count on enable and filter files · f5ca233e
      Steven Rostedt (Google) authored
      When the trace event enable and filter files are opened, increment the
      trace array ref counter, otherwise they can be accessed when the trace
      array is being deleted. The ref counter keeps the trace array from being
      deleted while those files are opened.
      
      Link: https://lkml.kernel.org/r/20230907024803.456187066@goodmis.org
      Link: https://lore.kernel.org/all/1cb3aee2-19af-c472-e265-05176fe9bd84@huawei.com/
      
      Cc: stable@vger.kernel.org
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Fixes: 8530dec6 ("tracing: Add tracing_check_open_get_tr()")
      Tested-by: default avatarLinux Kernel Functional Testing <lkft@linaro.org>
      Tested-by: default avatarNaresh Kamboju <naresh.kamboju@linaro.org>
      Reported-by: default avatarZheng Yejian <zhengyejian1@huawei.com>
      Signed-off-by: default avatarSteven Rostedt (Google) <rostedt@goodmis.org>
      f5ca233e
    • Steven Rostedt (Google)'s avatar
      tracefs/eventfs: Use dput to free the toplevel events directory · 9879e5e1
      Steven Rostedt (Google) authored
      Currently when rmdir on an instance is done, eventfs_remove_events_dir()
      is called and it does a dput on the dentry and then frees the
      eventfs_inode that represents the events directory.
      
      But there's no protection against a reader reading the top level events
      directory at the same time and we can get a use after free error. Instead,
      use the dput() associated to the dentry to also free the eventfs_inode
      associated to the events directory, as that will get called when the last
      reference to the directory is released.
      
      This issue triggered the following KASAN report:
      
       ==================================================================
       BUG: KASAN: slab-use-after-free in eventfs_root_lookup+0x88/0x1b0
       Read of size 8 at addr ffff888120130ca0 by task ftracetest/1201
      
       CPU: 4 PID: 1201 Comm: ftracetest Not tainted 6.5.0-test-10737-g469e0a8194e7 #13
       Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
       Call Trace:
        <TASK>
        dump_stack_lvl+0x57/0x90
        print_report+0xcf/0x670
        ? __pfx_ring_buffer_record_off+0x10/0x10
        ? _raw_spin_lock_irqsave+0x2b/0x70
        ? __virt_addr_valid+0xd9/0x160
        kasan_report+0xd4/0x110
        ? eventfs_root_lookup+0x88/0x1b0
        ? eventfs_root_lookup+0x88/0x1b0
        eventfs_root_lookup+0x88/0x1b0
        ? eventfs_root_lookup+0x33/0x1b0
        __lookup_slow+0x194/0x2a0
        ? __pfx___lookup_slow+0x10/0x10
        ? down_read+0x11c/0x330
        walk_component+0x166/0x220
        link_path_walk.part.0.constprop.0+0x3a3/0x5a0
        ? seqcount_lockdep_reader_access+0x82/0x90
        ? __pfx_link_path_walk.part.0.constprop.0+0x10/0x10
        path_openat+0x143/0x11f0
        ? __lock_acquire+0xa1a/0x3220
        ? __pfx_path_openat+0x10/0x10
        ? __pfx___lock_acquire+0x10/0x10
        do_filp_open+0x166/0x290
        ? __pfx_do_filp_open+0x10/0x10
        ? lock_is_held_type+0xce/0x120
        ? preempt_count_sub+0xb7/0x100
        ? _raw_spin_unlock+0x29/0x50
        ? alloc_fd+0x1a0/0x320
        do_sys_openat2+0x126/0x160
        ? rcu_is_watching+0x34/0x60
        ? __pfx_do_sys_openat2+0x10/0x10
        ? __might_resched+0x2cf/0x3b0
        ? __fget_light+0xdf/0x100
        __x64_sys_openat+0xcd/0x140
        ? __pfx___x64_sys_openat+0x10/0x10
        ? syscall_enter_from_user_mode+0x22/0x90
        ? lockdep_hardirqs_on+0x7d/0x100
        do_syscall_64+0x3b/0xc0
        entry_SYSCALL_64_after_hwframe+0x6e/0xd8
       RIP: 0033:0x7f1dceef5e51
       Code: 75 57 89 f0 25 00 00 41 00 3d 00 00 41 00 74 49 80 3d 9a 27 0e 00 00 74 6d 89 da 48 89 ee bf 9c ff ff ff b8 01 01 00 00 0f 05 <48> 3d 00 f0 ff ff 0f 87 93 00 00 00 48 8b 54 24 28 64 48 2b 14 25
       RSP: 002b:00007fff2cddf380 EFLAGS: 00000202 ORIG_RAX: 0000000000000101
       RAX: ffffffffffffffda RBX: 0000000000000241 RCX: 00007f1dceef5e51
       RDX: 0000000000000241 RSI: 000055d7520677d0 RDI: 00000000ffffff9c
       RBP: 000055d7520677d0 R08: 000000000000001e R09: 0000000000000001
       R10: 00000000000001b6 R11: 0000000000000202 R12: 0000000000000000
       R13: 0000000000000003 R14: 000055d752035678 R15: 000055d752067788
        </TASK>
      
       Allocated by task 1200:
        kasan_save_stack+0x2f/0x50
        kasan_set_track+0x21/0x30
        __kasan_kmalloc+0x8b/0x90
        eventfs_create_events_dir+0x54/0x220
        create_event_toplevel_files+0x42/0x130
        event_trace_add_tracer+0x33/0x180
        trace_array_create_dir+0x52/0xf0
        trace_array_create+0x361/0x410
        instance_mkdir+0x6b/0xb0
        tracefs_syscall_mkdir+0x57/0x80
        vfs_mkdir+0x275/0x380
        do_mkdirat+0x1da/0x210
        __x64_sys_mkdir+0x74/0xa0
        do_syscall_64+0x3b/0xc0
        entry_SYSCALL_64_after_hwframe+0x6e/0xd8
      
       Freed by task 1251:
        kasan_save_stack+0x2f/0x50
        kasan_set_track+0x21/0x30
        kasan_save_free_info+0x27/0x40
        __kasan_slab_free+0x106/0x180
        __kmem_cache_free+0x149/0x2e0
        event_trace_del_tracer+0xcb/0x120
        __remove_instance+0x16a/0x340
        instance_rmdir+0x77/0xa0
        tracefs_syscall_rmdir+0x77/0xc0
        vfs_rmdir+0xed/0x2d0
        do_rmdir+0x235/0x280
        __x64_sys_rmdir+0x5f/0x90
        do_syscall_64+0x3b/0xc0
        entry_SYSCALL_64_after_hwframe+0x6e/0xd8
      
       The buggy address belongs to the object at ffff888120130ca0
        which belongs to the cache kmalloc-16 of size 16
       The buggy address is located 0 bytes inside of
        freed 16-byte region [ffff888120130ca0, ffff888120130cb0)
      
       The buggy address belongs to the physical page:
       page:000000004dbddbb0 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x120130
       flags: 0x17ffffc0000800(slab|node=0|zone=2|lastcpupid=0x1fffff)
       page_type: 0xffffffff()
       raw: 0017ffffc0000800 ffff8881000423c0 dead000000000122 0000000000000000
       raw: 0000000000000000 0000000000800080 00000001ffffffff 0000000000000000
       page dumped because: kasan: bad access detected
      
       Memory state around the buggy address:
        ffff888120130b80: 00 00 fc fc 00 05 fc fc 00 00 fc fc 00 02 fc fc
        ffff888120130c00: 00 07 fc fc 00 00 fc fc 00 00 fc fc fa fb fc fc
       >ffff888120130c80: 00 00 fc fc fa fb fc fc 00 00 fc fc 00 00 fc fc
                                      ^
        ffff888120130d00: 00 00 fc fc 00 00 fc fc 00 00 fc fc fa fb fc fc
        ffff888120130d80: 00 00 fc fc 00 00 fc fc 00 00 fc fc 00 00 fc fc
       ==================================================================
      
      Link: https://lkml.kernel.org/r/20230907024803.250873643@goodmis.org
      Link: https://lore.kernel.org/all/1cb3aee2-19af-c472-e265-05176fe9bd84@huawei.com/
      
      Cc: Ajay Kaher <akaher@vmware.com>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Fixes: 5bdcd5f5 eventfs: ("Implement removal of meta data from eventfs")
      Tested-by: default avatarLinux Kernel Functional Testing <lkft@linaro.org>
      Tested-by: default avatarNaresh Kamboju <naresh.kamboju@linaro.org>
      Reported-by: default avatarZheng Yejian <zhengyejian1@huawei.com>
      Signed-off-by: default avatarSteven Rostedt (Google) <rostedt@goodmis.org>
      9879e5e1
  2. 06 Sep, 2023 2 commits
  3. 02 Sep, 2023 11 commits
  4. 01 Sep, 2023 16 commits
    • Linus Torvalds's avatar
      Merge tag 'trace-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · 34232fcf
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "User visible changes:
      
         - Added a way to easier filter with cpumasks:
      
             # echo 'cpumask & CPUS{17-42}' > /sys/kernel/tracing/events/ipi_send_cpumask/filter
      
         - Show actual size of ring buffer after modifying the ring buffer
           size via buffer_size_kb.
      
           Currently it just returns what was written, but the actual size
           rounds up to the sub buffer size. Show that real size instead.
      
        Major changes:
      
         - Added "eventfs". This is the code that handles the inodes and
           dentries of tracefs/events directory. As there are thousands of
           events, and each event has several inodes and dentries that
           currently exist even when tracing is never used, they take up
           precious memory. Instead, eventfs will allocate the inodes and
           dentries in a JIT way (similar to what procfs does). There is now
           metadata that handles the events and subdirectories, and will
           create the inodes and dentries when they are used.
      
           Note, I also have patches that remove the subdirectory meta data,
           but will wait till the next merge window before applying them. It's
           a little more complex, and I want to make sure the dynamic code
           works properly before adding more complexity, making it easier to
           revert if need be.
      
        Minor changes:
      
         - Optimization to user event list traversal
      
         - Remove intermediate permission of tracefs files (note the
           intermediate permission removes all access to the files so it is
           not a security concern, but just a clean up)
      
         - Add the complex fix to FORTIFY_SOURCE to the kernel stack event
           logic
      
         - Other minor cleanups"
      
      * tag 'trace-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: (29 commits)
        tracefs: Remove kerneldoc from struct eventfs_file
        tracefs: Avoid changing i_mode to a temp value
        tracing/user_events: Optimize safe list traversals
        ftrace: Remove empty declaration ftrace_enable_daemon() and ftrace_disable_daemon()
        tracing: Remove unused function declarations
        tracing/filters: Document cpumask filtering
        tracing/filters: Further optimise scalar vs cpumask comparison
        tracing/filters: Optimise CPU vs cpumask filtering when the user mask is a single CPU
        tracing/filters: Optimise scalar vs cpumask filtering when the user mask is a single CPU
        tracing/filters: Optimise cpumask vs cpumask filtering when user mask is a single CPU
        tracing/filters: Enable filtering the CPU common field by a cpumask
        tracing/filters: Enable filtering a scalar field by a cpumask
        tracing/filters: Enable filtering a cpumask field by another cpumask
        tracing/filters: Dynamically allocate filter_pred.regex
        test: ftrace: Fix kprobe test for eventfs
        eventfs: Move tracing/events to eventfs
        eventfs: Implement removal of meta data from eventfs
        eventfs: Implement functions to create files and dirs when accessed
        eventfs: Implement eventfs lookup, read, open functions
        eventfs: Implement eventfs file add functions
        ...
      34232fcf
    • Linus Torvalds's avatar
      Merge tag 'wq-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · bd30fe6a
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
      
       - Unbound workqueues now support more flexible affinity scopes.
      
         The default behavior is to soft-affine according to last level cache
         boundaries. A work item queued from a given LLC is executed by a
         worker running on the same LLC but the worker may be moved across
         cache boundaries as the scheduler sees fit. On machines which
         multiple L3 caches, which are becoming more popular along with
         chiplet designs, this improves cache locality while not harming work
         conservation too much.
      
         Unbound workqueues are now also a lot more flexible in terms of
         execution affinity. Differeing levels of affinity scopes are
         supported and both the default and per-workqueue affinity settings
         can be modified dynamically. This should help working around amny of
         sub-optimal behaviors observed recently with asymmetric ARM CPUs.
      
         This involved signficant restructuring of workqueue code. Nothing was
         reported yet but there's some risk of subtle regressions. Should keep
         an eye out.
      
       - Rescuer workers now has more identifiable comms.
      
       - workqueue.unbound_cpus added so that CPUs which can be used by
         workqueue can be constrained early during boot.
      
       - Now that all the in-tree users have been flushed out, trigger warning
         if system-wide workqueues are flushed.
      
      * tag 'wq-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (31 commits)
        workqueue: fix data race with the pwq->stats[] increment
        workqueue: Rename rescuer kworker
        workqueue: Make default affinity_scope dynamically updatable
        workqueue: Add "Affinity Scopes and Performance" section to documentation
        workqueue: Implement non-strict affinity scope for unbound workqueues
        workqueue: Add workqueue_attrs->__pod_cpumask
        workqueue: Factor out need_more_worker() check and worker wake-up
        workqueue: Factor out work to worker assignment and collision handling
        workqueue: Add multiple affinity scopes and interface to select them
        workqueue: Modularize wq_pod_type initialization
        workqueue: Add tools/workqueue/wq_dump.py which prints out workqueue configuration
        workqueue: Generalize unbound CPU pods
        workqueue: Factor out clearing of workqueue-only attrs fields
        workqueue: Factor out actual cpumask calculation to reduce subtlety in wq_update_pod()
        workqueue: Initialize unbound CPU pods later in the boot
        workqueue: Move wq_pod_init() below workqueue_init()
        workqueue: Rename NUMA related names to use pod instead
        workqueue: Rename workqueue_attrs->no_numa to ->ordered
        workqueue: Make unbound workqueues to use per-cpu pool_workqueues
        workqueue: Call wq_update_unbound_numa() on all CPUs in NUMA node on CPU hotplug
        ...
      bd30fe6a
    • Linus Torvalds's avatar
      Merge tag 'cgroup-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 7716f383
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - Per-cpu cpu usage stats are now tracked
      
         This currently isn't printed out in the cgroupfs interface and can
         only be accessed through e.g. BPF. Should decide on a not-too-ugly
         way to show per-cpu stats in cgroupfs
      
       - cpuset received some cleanups and prepatory patches for the pending
         cpus.exclusive patchset which will allow cpuset partitions to be
         created below non-partition parents, which should ease the management
         of partition cpusets
      
       - A lot of code and documentation cleanup patches
      
       - tools/testing/selftests/cgroup/test_cpuset.c added
      
      * tag 'cgroup-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (32 commits)
        cgroup: Avoid -Wstringop-overflow warnings
        cgroup:namespace: Remove unused cgroup_namespaces_init()
        cgroup/rstat: Record the cumulative per-cpu time of cgroup and its descendants
        cgroup: clean up if condition in cgroup_pidlist_start()
        cgroup: fix obsolete function name in cgroup_destroy_locked()
        Documentation: cgroup-v2.rst: Correct number of stats entries
        cgroup: fix obsolete function name above css_free_rwork_fn()
        cgroup/cpuset: fix kernel-doc
        cgroup: clean up printk()
        cgroup: fix obsolete comment above cgroup_create()
        docs: cgroup-v1: fix typo
        docs: cgroup-v1: correct the term of Page Cache organization in inode
        cgroup/misc: Store atomic64_t reads to u64
        cgroup/misc: Change counters to be explicit 64bit types
        cgroup/misc: update struct members descriptions
        cgroup: remove cgrp->kn check in css_populate_dir()
        cgroup: fix obsolete function name
        cgroup: use cached local variable parent in for loop
        cgroup: remove obsolete comment above struct cgroupstats
        cgroup: put cgroup_tryget_css() inside CONFIG_CGROUP_SCHED
        ...
      7716f383
    • Linus Torvalds's avatar
      Merge tag 'percpu-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu · e987af45
      Linus Torvalds authored
      Pull percpu updates from Dennis Zhou:
       "One bigger change to percpu_counter's api allowing for init and
        destroy of multiple counters via percpu_counter_init_many() and
        percpu_counter_destroy_many(). This is used to help begin remediating
        a performance regression with percpu rss stats.
      
        Additionally, it seems larger core count machines are feeling the
        burden of the single threaded allocation of percpu. Mateusz is
        thinking about it and I will spend some time on it too.
      
        percpu:
      
         - A couple cleanups by Baoquan He and Bibo Mao. The only behavior
           change is to start printing messages if we're under the warn limit
           for failed atomic allocations.
      
        percpu_counter:
      
         - Shakeel introduced percpu counters into mm_struct which caused
           percpu allocations be on the hot path [1]. Originally I spent some
           time trying to improve the percpu allocator, but instead preferred
           what Mateusz Guzik proposed grouping at the allocation site,
           percpu_counter_init_many(). This allows a single percpu allocation
           to be shared by the counters. I like this approach because it
           creates a shared lifetime by the allocations. Additionally, I
           believe many inits have higher level synchronization requirements,
           like percpu_counter does against HOTPLUG_CPU. Therefore we can
           group these optimizations together"
      
      Link: https://lore.kernel.org/linux-mm/20221024052841.3291983-1-shakeelb@google.com/ [1]
      
      * tag 'percpu-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu:
        kernel/fork: group allocation/free of per-cpu counters for mm struct
        pcpcntr: add group allocation/free
        mm/percpu.c: print error message too if atomic alloc failed
        mm/percpu.c: optimize the code in pcpu_setup_first_chunk() a little bit
        mm/percpu.c: remove redundant check
        mm/percpu: Remove some local variables in pcpu_populate_pte
      e987af45
    • Linus Torvalds's avatar
      Merge tag 'v6.6-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 0fe2b86c
      Linus Torvalds authored
      Pull crypto fix from Herbert Xu:
       "This fixes a random config build failure on powerpc"
      
      * tag 'v6.6-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: powerpc/chacha20,poly1305-p10 - Add dependency on VSX
      0fe2b86c
    • Linus Torvalds's avatar
      Merge tag 'for-linus-2023083101' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 29aa98d0
      Linus Torvalds authored
      Pull HID updates from Benjamin Tissoires:
      
       - devm fixes for problems that caused use-after-free reports (Rahul
         Rameshbabu)
      
       - Some extensive HID docs (Marco Morandini)
      
       - Constification of struct class (Ivan Orlov and Greg Kroah-Hartman)
      
       - Google Stadia Force Feedback support (Fabio Baltieri)
      
       - Various fixes and new device ID support
      
      * tag 'for-linus-2023083101' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (42 commits)
        HID: logitech-hidpp: rework one more time the retries attempts
        HID: nvidia-shield: Reference hid_device devm allocation of input_dev name
        HID: multitouch: Correct devm device reference for hidinput input_dev name
        HID: uclogic: Correct devm device reference for hidinput input_dev name
        HID: logitech-dj: Fix error handling in logi_dj_recv_switch_to_dj_mode()
        HID: i2c-hid: elan: Add ili9882t timing
        dt-bindings: input: i2c-hid: Introduce Ilitek ili9882t
        HID: apple: Add "Hailuck" to the list of non-apple keyboards
        HID: steelseries: arctis_1_battery_request[] should be static
        MAINTAINERS: update my email address
        HID: logitech-hidpp: Add support for Logitech MX Anywhere 3 mouse
        HID: wacom: struct name cleanup
        HID: wacom: remove unnecessary 'connected' variable from EKR
        HID: wacom: remove the battery when the EKR is off
        HID: nvidia-shield: Update Thunderstrike LED instance name to use id
        HID: nvidia-shield: Add battery support for Thunderstrike
        HID: nvidia-shield: Remove led_classdev_unregister in thunderstrike_create
        HID: hid-google-stadiaff: add support for Stadia force feedback
        HID: logitech-dj: Add support for a new lightspeed receiver iteration
        HID: logitech-hidpp: Add support for the Pro X Superlight
        ...
      29aa98d0
    • Linus Torvalds's avatar
      Merge tag 'media/v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 307d5903
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - new i2c drivers: ds90ub913, ds90ub953, ds90ub960, dw9719, ds90ub913
      
       - new Intel IVSC MEI drivers
      
       - some Mediatek platform drivers were moved to a common location
      
       - Intel atomisp2 driver is now working with the main ov2680 driver. Due
         to that, the atomisp2 ov2680 staging one was removed
      
       - the bttv driver was finally converted to videobuf2 framework. This
         was the last one upstream using videobuf version 1 core. We'll likely
         remove the old videobuf framework on 6.7
      
       - lots of improvements at atomisp driver: it now works with normal I2C
         sensors. Several compile-mode dependecies to select between ISP2400
         and ISP2401 are now solved in runtime
      
       - a new ipu-bridge logic was added to work with IVSC MEI drivers
      
       - venus driver gained better support for new VPU versions
      
       - the v4l core async framework has gained lots of improvements and
         cleanups
      
       - lots of other cleanups, improvements and driver fixes
      
      * tag 'media/v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (358 commits)
        media: ivsc: Add ACPI dependency
        media: bttv: convert to vb2
        media: bttv: use audio defaults for winfast2000
        media: bttv: refactor bttv_set_dma()
        media: bttv: move vbi_skip/vbi_count out of buffer
        media: bttv: remove crop info from bttv_buffer
        media: bttv: remove tvnorm field from bttv_buffer
        media: bttv: remove format field from bttv_buffer
        media: bttv: move do_crop flag out of bttv_fh
        media: bttv: copy vbi_fmt from bttv_fh
        media: bttv: copy vid fmt/width/height from fh
        media: bttv: radio use v4l2_fh instead of bttv_fh
        media: bttv: replace BUG with WARN_ON
        media: bttv: use video_drvdata to get bttv
        media: i2c: rdacm21: Fix uninitialized value
        media: coda: Remove duplicated include
        media: vivid: fix the racy dev->radio_tx_rds_owner
        media: i2c: ccs: Check rules is non-NULL
        media: i2c: ds90ub960: Fix PLL config for 1200 MHz CSI rate
        media: i2c: ds90ub953: Fix use of uninitialized variables
        ...
      307d5903
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev · b84acc11
      Linus Torvalds authored
      Pull fbdev updates from Helge Deller:
      
       - Drop the mx3fb driver
      
       - Use list_for_each_entry() helper in fbcore code
      
       - Shorten neofb product names for fb-fix id field
      
       - reduce memory usage in ssd1307fb
      
      * tag 'fbdev-for-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev:
        fbdev: Update fbdev source file paths
        fbdev: ssd1307fb: Use bool for ssd1307fb_deviceinfo flags
        fbdev: neofb: Shorten Neomagic product name in info struct
        fbdev: mx3fb: Remove the driver
        fbdev/core: Use list_for_each_entry() helper
      b84acc11
    • Linus Torvalds's avatar
      Merge tag 'char-misc-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 1c9f8dff
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the big set of char/misc and other small driver subsystem
        changes for 6.6-rc1.
      
        Stuff all over the place here, lots of driver updates and changes and
        new additions. Short summary is:
      
         - new IIO drivers and updates
      
         - Interconnect driver updates
      
         - fpga driver updates and additions
      
         - fsi driver updates
      
         - mei driver updates
      
         - coresight driver updates
      
         - nvmem driver updates
      
         - counter driver updates
      
         - lots of smaller misc and char driver updates and additions
      
        All of these have been in linux-next for a long time with no reported
        problems"
      
      * tag 'char-misc-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (267 commits)
        nvmem: core: Notify when a new layout is registered
        nvmem: core: Do not open-code existing functions
        nvmem: core: Return NULL when no nvmem layout is found
        nvmem: core: Create all cells before adding the nvmem device
        nvmem: u-boot-env:: Replace zero-length array with DECLARE_FLEX_ARRAY() helper
        nvmem: sec-qfprom: Add Qualcomm secure QFPROM support
        dt-bindings: nvmem: sec-qfprom: Add bindings for secure qfprom
        dt-bindings: nvmem: Add compatible for QCM2290
        nvmem: Kconfig: Fix typo "drive" -> "driver"
        nvmem: Explicitly include correct DT includes
        nvmem: add new NXP QorIQ eFuse driver
        dt-bindings: nvmem: Add t1023-sfp efuse support
        dt-bindings: nvmem: qfprom: Add compatible for MSM8226
        nvmem: uniphier: Use devm_platform_get_and_ioremap_resource()
        nvmem: qfprom: do some cleanup
        nvmem: stm32-romem: Use devm_platform_get_and_ioremap_resource()
        nvmem: rockchip-efuse: Use devm_platform_get_and_ioremap_resource()
        nvmem: meson-mx-efuse: Convert to devm_platform_ioremap_resource()
        nvmem: lpc18xx_otp: Convert to devm_platform_ioremap_resource()
        nvmem: brcm_nvram: Use devm_platform_get_and_ioremap_resource()
        ...
      1c9f8dff
    • Linus Torvalds's avatar
      Merge tag 'driver-core-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 28a4f91f
      Linus Torvalds authored
      Pull driver core updates from Greg KH:
       "Here is a small set of driver core updates and additions for 6.6-rc1.
      
        Included in here are:
      
         - stable kernel documentation updates
      
         - class structure const work from Ivan on various subsystems
      
         - kernfs tweaks
      
         - driver core tests!
      
         - kobject sanity cleanups
      
         - kobject structure reordering to save space
      
         - driver core error code handling fixups
      
         - other minor driver core cleanups
      
        All of these have been in linux-next for a while with no reported
        problems"
      
      * tag 'driver-core-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (32 commits)
        driver core: Call in reversed order in device_platform_notify_remove()
        driver core: Return proper error code when dev_set_name() fails
        kobject: Remove redundant checks for whether ktype is NULL
        kobject: Add sanity check for kset->kobj.ktype in kset_register()
        drivers: base: test: Add missing MODULE_* macros to root device tests
        drivers: base: test: Add missing MODULE_* macros for platform devices tests
        drivers: base: Free devm resources when unregistering a device
        drivers: base: Add basic devm tests for platform devices
        drivers: base: Add basic devm tests for root devices
        kernfs: fix missing kernfs_iattr_rwsem locking
        docs: stable-kernel-rules: mention that regressions must be prevented
        docs: stable-kernel-rules: fine-tune various details
        docs: stable-kernel-rules: make the examples for option 1 a proper list
        docs: stable-kernel-rules: move text around to improve flow
        docs: stable-kernel-rules: improve structure by changing headlines
        base/node: Remove duplicated include
        kernfs: attach uuid for every kernfs and report it in fsid
        kernfs: add stub helper for kernfs_generic_poll()
        x86/resctrl: make pseudo_lock_class a static const structure
        x86/MSR: make msr_class a static const structure
        ...
      28a4f91f
    • Linus Torvalds's avatar
      Merge tag 'tty-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 8e1e4955
      Linus Torvalds authored
      Pull tty/serial driver updates from Greg KH:
       "Here is the big set of tty and serial driver changes for 6.6-rc1.
      
        Lots of cleanups in here this cycle, and some driver updates. Short
        summary is:
      
         - Jiri's continued work to make the tty code and apis be a bit more
           sane with regards to modern kernel coding style and types
      
         - cpm_uart driver updates
      
         - n_gsm updates and fixes
      
         - meson driver updates
      
         - sc16is7xx driver updates
      
         - 8250 driver updates for different hardware types
      
         - qcom-geni driver fixes
      
         - tegra serial driver change
      
         - stm32 driver updates
      
         - synclink_gt driver cleanups
      
         - tty structure size reduction
      
        All of these have been in linux-next this week with no reported
        issues. The last bit of cleanups from Jiri and the tty structure size
        reduction came in last week, a bit late but as they were just style
        changes and size reductions, I figured they should get into this merge
        cycle so that others can work on top of them with no merge conflicts"
      
      * tag 'tty-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (199 commits)
        tty: shrink the size of struct tty_struct by 40 bytes
        tty: n_tty: deduplicate copy code in n_tty_receive_buf_real_raw()
        tty: n_tty: extract ECHO_OP processing to a separate function
        tty: n_tty: unify counts to size_t
        tty: n_tty: use u8 for chars and flags
        tty: n_tty: simplify chars_in_buffer()
        tty: n_tty: remove unsigned char casts from character constants
        tty: n_tty: move newline handling to a separate function
        tty: n_tty: move canon handling to a separate function
        tty: n_tty: use MASK() for masking out size bits
        tty: n_tty: make n_tty_data::num_overrun unsigned
        tty: n_tty: use time_is_before_jiffies() in n_tty_receive_overrun()
        tty: n_tty: use 'num' for writes' counts
        tty: n_tty: use output character directly
        tty: n_tty: make flow of n_tty_receive_buf_common() a bool
        Revert "tty: serial: meson: Add a earlycon for the T7 SoC"
        Documentation: devices.txt: Fix minors for ttyCPM*
        Documentation: devices.txt: Remove ttySIOC*
        Documentation: devices.txt: Remove ttyIOC*
        serial: 8250_bcm7271: improve bcm7271 8250 port
        ...
      8e1e4955
    • Linus Torvalds's avatar
      Merge tag 'staging-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · e9259926
      Linus Torvalds authored
      Pull staging driver updates from Greg KH:
       "Here are a set of staging driver cleanups for 6.6-rc1. Nothing huge in
        here at all, overall we dropped a few hundred lines of code, it's been
        a quiet development cycle for this subsystem.
      
        Nothing stands out, everything can be categorized as "minor coding
        style cleanups for staging drivers" and there was one race condition
        fixed.
      
        Full details in the shortlog.
      
        All have been in linux-next for a while with no reported problems"
      
      * tag 'staging-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (71 commits)
        staging: rtl8192e: Annotate struct rtllib_txb with __counted_by
        staging: greybus: fix alignment of open parenthesis
        staging: sm750fb: fix sii164InitChip function name
        staging: vme_user: fix check lines should not end with a '('
        staging: vme_user: fix check blank lines not necessary
        staging: rtl8723bs: Use helpers to check broadcast and multicast Ether addresses
        staging: vt6655: replace camel case by snake case
        staging: rtl8192e: Remove unsupported mode IW_MODE_MESH
        staging: rtl8192e: Remove unsupported mode IW_MODE_REPEAT
        staging: rtl8192e: Remove unused function rtllib_start_master_bss()
        staging: rtl8192e: Remove unsupported mode IW_MODE_MASTER
        staging: vt6655: Change camel case variables to snake case
        staging: fieldbus: arcx-anybus: Remove redundant of_match_ptr()
        staging: vme_user: fix alignment of open parenthesis
        Staging: rtl8192e: Rename function RxBaInactTimeout
        Staging: rtl8192e: Rename function TxBaInactTimeout
        Staging: rtl8192e: Rename function BaSetupTimeOut
        Staging: rtl8192e: Rename function TsInitDelBA
        Staging: rtl8192e: Rename function TsInitAddBA
        staging: vme_user: fix check alignment should match open parenthesis
        ...
      e9259926
    • Linus Torvalds's avatar
      Merge tag 'usb-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 51e7accb
      Linus Torvalds authored
      Pull USB / Thunderbolt / PHY driver updates from Greg KH:
       "Here is the big set of USB, Thunderbolt, and PHY driver updates for
        6.6-rc1. Included in here are:
      
         - PHY driver additions and cleanups
      
         - Thunderbolt minor additions and fixes
      
         - USB MIDI 2 gadget support added
      
         - dwc3 driver updates and additions
      
         - Removal of some old USB wireless code that was missed when that
           codebase was originally removed a few years ago, cleaning up some
           core USB code paths
      
         - USB core potential use-after-free fixes that syzbot from different
           people/groups keeps tripping over
      
         - typec updates and additions
      
         - gadget fixes and cleanups
      
         - loads of smaller USB core and driver cleanups all over the place
      
        Full details are in the shortlog. All of these have been in linux-next
        for a while with no reported problems"
      
      * tag 'usb-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (154 commits)
        platform/chrome: cros_ec_typec: Configure Retimer cable type
        tcpm: Avoid soft reset when partner does not support get_status
        usb: typec: tcpm: reset counter when enter into unattached state after try role
        usb: typec: tcpm: set initial svdm version based on pd revision
        USB: serial: option: add FOXCONN T99W368/T99W373 product
        USB: serial: option: add Quectel EM05G variant (0x030e)
        usb: dwc2: add pci_device_id driver_data parse support
        usb: gadget: remove max support speed info in bind operation
        usb: gadget: composite: cleanup function config_ep_by_speed_and_alt()
        usb: gadget: config: remove max speed check in usb_assign_descriptors()
        usb: gadget: unconditionally allocate hs/ss descriptor in bind operation
        usb: gadget: f_uvc: change endpoint allocation in uvc_function_bind()
        usb: gadget: add a inline function gether_bitrate()
        usb: gadget: use working speed to calcaulate network bitrate and qlen
        dt-bindings: usb: samsung,exynos-dwc3: Add Exynos850 support
        usb: dwc3: exynos: Add support for Exynos850 variant
        usb: gadget: udc-xilinx: fix incorrect type in assignment warning
        usb: gadget: udc-xilinx: fix cast from restricted __le16 warning
        usb: gadget: udc-xilinx: fix restricted __le16 degrades to integer warning
        USB: dwc2: hande irq on dead controller correctly
        ...
      51e7accb
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.6-1' of... · e2c874f9
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Hans de Goede:
      
       - hp-bioscfg: New firmware-attributes driver for changing BIOS settings
         from within Linux
      
       - asus-wmi: Add charger mode, middle fan and eGPU settings support
      
       - ideapad: Support keyboard backlight control on more models
      
       - mellanox: Support for new models
      
       - sel-3350: New LED and power-supply driver for this industrial
         mainboard
      
       - simatic-ipc: Add RTC battery monitor and various new models support
      
       - miscellaneous other cleanups / fixes
      
      * tag 'platform-drivers-x86-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (101 commits)
        platform/x86: asus-wmi: corrections to egpu safety check
        platform/x86: mlx-platform: Add dependency on PCI to Kconfig
        platform/x86: ideapad-laptop: Add support for keyboard backlights using KBLC ACPI symbol
        platform/x86/amd/pmc: Fix build error with randconfig
        platform/x86/amd/pmf: Fix a missing cleanup path
        watchdog: simatic: Use idiomatic selection of P2SB
        platform/x86: p2sb: Make the Kconfig symbol hidden
        Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces
        platform: mellanox: nvsw-sn2201: change fans i2c busses.
        platform: mellanox: mlxreg-hotplug: Extend condition for notification callback processing
        platform: mellanox: Add initial support for PCIe based programming logic device
        platform: mellanox: mlx-platform: Get interrupt line through ACPI
        platform: mellanox: mlx-platform: Introduce ACPI init flow
        platform: mellanox: mlx-platform: Prepare driver to allow probing through ACPI infrastructure
        platform: mellanox: mlx-platform: Add reset callback
        platform: mellanox: Cosmetic changes
        platform: mellanox: mlx-platform: Modify power off callback
        platform: mellanox: mlx-platform: add support for additional CPLD
        platform: mellanox: mlx-platform: Add reset cause attribute
        platform: mellanox: mlx-platform: Modify health and power hotplug action
        ...
      e2c874f9
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-6.6-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · e0152e74
      Linus Torvalds authored
      Pull RISC-V updates from Palmer Dabbelt:
      
       - Support for the new "riscv,isa-extensions" and "riscv,isa-base"
         device tree interfaces for probing extensions
      
       - Support for userspace access to the performance counters
      
       - Support for more instructions in kprobes
      
       - Crash kernels can be allocated above 4GiB
      
       - Support for KCFI
      
       - Support for ELFs in !MMU configurations
      
       - ARCH_KMALLOC_MINALIGN has been reduced to 8
      
       - mmap() defaults to sv48-sized addresses, with longer addresses hidden
         behind a hint (similar to Arm and Intel)
      
       - Also various fixes and cleanups
      
      * tag 'riscv-for-linus-6.6-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (51 commits)
        lib/Kconfig.debug: Restrict DEBUG_INFO_SPLIT for RISC-V
        riscv: support PREEMPT_DYNAMIC with static keys
        riscv: Move create_tmp_mapping() to init sections
        riscv: Mark KASAN tmp* page tables variables as static
        riscv: mm: use bitmap_zero() API
        riscv: enable DEBUG_FORCE_FUNCTION_ALIGN_64B
        riscv: remove redundant mv instructions
        RISC-V: mm: Document mmap changes
        RISC-V: mm: Update pgtable comment documentation
        RISC-V: mm: Add tests for RISC-V mm
        RISC-V: mm: Restrict address space for sv39,sv48,sv57
        riscv: enable DMA_BOUNCE_UNALIGNED_KMALLOC for !dma_coherent
        riscv: allow kmalloc() caches aligned to the smallest value
        riscv: support the elf-fdpic binfmt loader
        binfmt_elf_fdpic: support 64-bit systems
        riscv: Allow CONFIG_CFI_CLANG to be selected
        riscv/purgatory: Disable CFI
        riscv: Add CFI error handling
        riscv: Add ftrace_stub_graph
        riscv: Add types to indirectly called assembly functions
        ...
      e0152e74
    • Linus Torvalds's avatar
      Merge tag 'csky-for-linus-6.6-2' of https://github.com/c-sky/csky-linux · a031eba2
      Linus Torvalds authored
      Pull arch/csky fix from Guo Ren:
      
       - Fix compile error by missing header file
      
      * tag 'csky-for-linus-6.6-2' of https://github.com/c-sky/csky-linux:
        csky: Fixup compile error
      a031eba2
  5. 31 Aug, 2023 8 commits
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-6.6-1' of git://git.linux-nfs.org/projects/anna/linux-nfs · 99d99825
      Linus Torvalds authored
      Pull NFS client updates from Anna Schumaker:
       "New Features:
         - Enable the NFS v4.2 READ_PLUS operation by default
      
        Stable Fixes:
         - NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info
         - NFS: Fix a potential data corruption
      
        Bugfixes:
         - Fix various READ_PLUS issues including:
            - smatch warnings
            - xdr size calculations
            - scratch buffer handling
            - 32bit / highmem xdr page handling
         - Fix checkpatch errors in file.c
         - Fix redundant readdir request after an EOF
         - Fix handling of COPY ERR_OFFLOAD_NO_REQ
         - Fix assignment of xprtdata.cred
      
        Cleanups:
         - Remove unused xprtrdma function declarations
         - Clean up an integer overflow check to avoid a warning
         - Clean up #includes in dns_resolve.c
         - Clean up nfs4_get_device_info so we don't pass a NULL pointer
           to __free_page()
         - Clean up sunrpc TCP socket timeout configuration
         - Guard against READDIR loops when entry names are too long
         - Use EXCHID4_FLAG_USE_PNFS_DS for DS servers"
      
      * tag 'nfs-for-6.6-1' of git://git.linux-nfs.org/projects/anna/linux-nfs: (22 commits)
        pNFS: Fix assignment of xprtdata.cred
        NFSv4.2: fix handling of COPY ERR_OFFLOAD_NO_REQ
        NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN
        NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server
        NFS/pNFS: Set the connect timeout for the pNFS flexfiles driver
        SUNRPC: Don't override connect timeouts in rpc_clnt_add_xprt()
        SUNRPC: Allow specification of TCP client connect timeout at setup
        SUNRPC: Refactor and simplify connect timeout
        SUNRPC: Set the TCP_SYNCNT to match the socket timeout
        NFS: Fix a potential data corruption
        nfs: fix redundant readdir request after get eof
        nfs/blocklayout: Use the passed in gfp flags
        filemap: Fix errors in file.c
        NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info
        NFS: Move common includes outside ifdef
        SUNRPC: clean up integer overflow check
        xprtrdma: Remove unused function declaration rpcrdma_bc_post_recv()
        NFS: Enable the READ_PLUS operation by default
        SUNRPC: kmap() the xdr pages during decode
        NFSv4.2: Rework scratch handling for READ_PLUS (again)
        ...
      99d99825
    • Linus Torvalds's avatar
      Merge tag 'nfsd-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · f35d1706
      Linus Torvalds authored
      Pull nfsd updates from Chuck Lever:
       "I'm thrilled to announce that the Linux in-kernel NFS server now
        offers NFSv4 write delegations. A write delegation enables a client to
        cache data and metadata for a single file more aggressively, reducing
        network round trips and server workload. Many thanks to Dai Ngo for
        contributing this facility, and to Jeff Layton and Neil Brown for
        reviewing and testing it.
      
        This release also sees the removal of all support for DES- and
        triple-DES-based Kerberos encryption types in the kernel's SunRPC
        implementation. These encryption types have been deprecated by the
        Internet community for years and are considered insecure. This change
        affects both the in-kernel NFS client and server.
      
        The server's UDP and TCP socket transports have now fully adopted
        David Howells' new bio_vec iterator so that no more than one sendmsg()
        call is needed to transmit each RPC message. In particular, this helps
        kTLS optimize record boundaries when sending RPC-with-TLS replies, and
        it takes the server a baby step closer to handling file I/O via
        folios.
      
        We've begun work on overhauling the SunRPC thread scheduler to remove
        a costly linked-list walk when looking for an idle RPC service thread
        to wake. The pre-requisites are included in this release. Thanks to
        Neil Brown for his ongoing work on this improvement"
      
      * tag 'nfsd-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux: (56 commits)
        Documentation: Add missing documentation for EXPORT_OP flags
        SUNRPC: Remove unused declaration rpc_modcount()
        SUNRPC: Remove unused declarations
        NFSD: da_addr_body field missing in some GETDEVICEINFO replies
        SUNRPC: Remove return value of svc_pool_wake_idle_thread()
        SUNRPC: make rqst_should_sleep() idempotent()
        SUNRPC: Clean up svc_set_num_threads
        SUNRPC: Count ingress RPC messages per svc_pool
        SUNRPC: Deduplicate thread wake-up code
        SUNRPC: Move trace_svc_xprt_enqueue
        SUNRPC: Add enum svc_auth_status
        SUNRPC: change svc_xprt::xpt_flags bits to enum
        SUNRPC: change svc_rqst::rq_flags bits to enum
        SUNRPC: change svc_pool::sp_flags bits to enum
        SUNRPC: change cache_head.flags bits to enum
        SUNRPC: remove timeout arg from svc_recv()
        SUNRPC: change svc_recv() to return void.
        SUNRPC: call svc_process() from svc_recv().
        nfsd: separate nfsd_last_thread() from nfsd_put()
        nfsd: Simplify code around svc_exit_thread() call in nfsd()
        ...
      f35d1706
    • Jonathan Neuschäfer's avatar
      fbdev: Update fbdev source file paths · 4a9762aa
      Jonathan Neuschäfer authored
      The files fbmem.c, fb_defio.c, fbsysfs.c, fbmon.c, modedb.c, and
      fbcmap.c were moved. Drop the path and just keep the file name.
      
      Reported by kalekale in #kernel (Libera IRC).
      
      Fixes: f7018c21 ("video: move fbdev to drivers/video/fbdev")
      Fixes: 19757fc8 ("fbdev: move fbdev core files to separate directory")
      Signed-off-by: default avatarJonathan Neuschäfer <j.neuschaefer@gmx.net>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      4a9762aa
    • Geert Uytterhoeven's avatar
      fbdev: ssd1307fb: Use bool for ssd1307fb_deviceinfo flags · 33d02972
      Geert Uytterhoeven authored
      The .need_pwm and .need_chargepump fields in struct ssd1307fb_deviceinfo
      are flags that can have only two possible values: 0 and 1.
      Reduce kernel size by changing their types from int to bool.
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Acked-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      33d02972
    • Helge Deller's avatar
      fbdev: neofb: Shorten Neomagic product name in info struct · a9415b03
      Helge Deller authored
      Avoid those compiler warnings:
      neofb.c:1959:3: warning: 'snprintf' will always be truncated;
         specified size is 16, but format string expands to at least 17 [-Wfortify-source]
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      Reported-by: default avatarNathan Chancellor <nathan@kernel.org>
      Reported-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Reviewed-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Link: https://lore.kernel.org/all/CAKwvOdn0xoVWjQ6ufM_rojtKb0f1i1hW-J_xYGfKDNFdHwaeHQ@mail.gmail.com/
      Link: https://github.com/ClangBuiltLinux/linux/issues/1923
      a9415b03
    • Linus Torvalds's avatar
      Merge tag '6.6-rc-ksmbd-fixes-part1' of git://git.samba.org/ksmbd · 8ae5d298
      Linus Torvalds authored
      Pull smb server updates from Steve French:
      
       - fix potential overflows in decoding create and in session setup
         requests
      
       - cleanup fixes
      
       - compounding fixes, including one for MacOS compounded read requests
      
       - session setup error handling fix
      
       - fix mode bit bug when applying force_directory_mode and
         force_create_mode
      
       - RDMA (smbdirect) write fix
      
      * tag '6.6-rc-ksmbd-fixes-part1' of git://git.samba.org/ksmbd:
        ksmbd: add missing calling smb2_set_err_rsp() on error
        ksmbd: replace one-element array with flex-array member in struct smb2_ea_info
        ksmbd: fix slub overflow in ksmbd_decode_ntlmssp_auth_blob()
        ksmbd: fix wrong DataOffset validation of create context
        ksmbd: Fix one kernel-doc comment
        ksmbd: reduce descriptor size if remaining bytes is less than request size
        ksmbd: fix `force create mode' and `force directory mode'
        ksmbd: fix wrong interim response on compound
        ksmbd: add support for read compound
        ksmbd: switch to use kmemdup_nul() helper
      8ae5d298
    • Linus Torvalds's avatar
      Merge tag 'jfs-6.6' of github.com:kleikamp/linux-shaggy · 7e5cd6f6
      Linus Torvalds authored
      Pull jfs updates from Dave Kleikamp:
       "A few small fixes"
      
      * tag 'jfs-6.6' of github.com:kleikamp/linux-shaggy:
        jfs: validate max amount of blocks before allocation.
        jfs: remove redundant initialization to pointer ip
        jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount
        FS: JFS: (trivial) Fix grammatical error in extAlloc
        fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount()
      7e5cd6f6
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 3ef96fcf
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "Many ext4 and jbd2 cleanups and bug fixes:
      
         - Cleanups in the ext4 remount code when going to and from read-only
      
         - Cleanups in ext4's multiblock allocator
      
         - Cleanups in the jbd2 setup/mounting code paths
      
         - Performance improvements when appending to a delayed allocation file
      
         - Miscellaneous syzbot and other bug fixes"
      
      * tag 'ext4_for_linus-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (60 commits)
        ext4: fix slab-use-after-free in ext4_es_insert_extent()
        libfs: remove redundant checks of s_encoding
        ext4: remove redundant checks of s_encoding
        ext4: reject casefold inode flag without casefold feature
        ext4: use LIST_HEAD() to initialize the list_head in mballoc.c
        ext4: do not mark inode dirty every time when appending using delalloc
        ext4: rename s_error_work to s_sb_upd_work
        ext4: add periodic superblock update check
        ext4: drop dio overwrite only flag and associated warning
        ext4: add correct group descriptors and reserved GDT blocks to system zone
        ext4: remove unused function declaration
        ext4: mballoc: avoid garbage value from err
        ext4: use sbi instead of EXT4_SB(sb) in ext4_mb_new_blocks_simple()
        ext4: change the type of blocksize in ext4_mb_init_cache()
        ext4: fix unttached inode after power cut with orphan file feature enabled
        jbd2: correct the end of the journal recovery scan range
        ext4: ext4_get_{dev}_journal return proper error value
        ext4: cleanup ext4_get_dev_journal() and ext4_get_journal()
        jbd2: jbd2_journal_init_{dev,inode} return proper error return value
        jbd2: drop useless error tag in jbd2_journal_wipe()
        ...
      3ef96fcf