Skip to content

Commit

Permalink
Merge tag 'mm-nonmm-stable-2022-08-06-2' of git://git.kernel.org/pub/…
Browse files Browse the repository at this point in the history
…scm/linux/kernel/git/akpm/mm

Pull misc updates from Andrew Morton:
 "Updates to various subsystems which I help look after. lib, ocfs2,
  fatfs, autofs, squashfs, procfs, etc. A relatively small amount of
  material this time"

* tag 'mm-nonmm-stable-2022-08-06-2' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (72 commits)
  scripts/gdb: ensure the absolute path is generated on initial source
  MAINTAINERS: kunit: add David Gow as a maintainer of KUnit
  mailmap: add linux.dev alias for Brendan Higgins
  mailmap: update Kirill's email
  profile: setup_profiling_timer() is moslty not implemented
  ocfs2: fix a typo in a comment
  ocfs2: use the bitmap API to simplify code
  ocfs2: remove some useless functions
  lib/mpi: fix typo 'the the' in comment
  proc: add some (hopefully) insightful comments
  bdi: remove enum wb_congested_state
  kernel/hung_task: fix address space of proc_dohung_task_timeout_secs
  lib/lzo/lzo1x_compress.c: replace ternary operator with min() and min_t()
  squashfs: support reading fragments in readahead call
  squashfs: implement readahead
  squashfs: always build "file direct" version of page actor
  Revert "squashfs: provide backing_dev_info in order to disable read-ahead"
  fs/ocfs2: Fix spelling typo in comment
  ia64: old_rr4 added under CONFIG_HUGETLB_PAGE
  proc: fix test for "vsyscall=xonly" boot option
  ...
  • Loading branch information
torvalds committed Aug 7, 2022
2 parents b5a8466 + b996955 commit eb5699b
Show file tree
Hide file tree
Showing 102 changed files with 1,313 additions and 724 deletions.
3 changes: 2 additions & 1 deletion .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ Boris Brezillon <[email protected]> <[email protected]>
Boris Brezillon <[email protected]> <[email protected]>
Boris Brezillon <[email protected]> <[email protected]>
Boris Brezillon <[email protected]> <[email protected]>
Brendan Higgins <[email protected]> <[email protected]>
Brian Avery <[email protected]>
Brian King <[email protected]>
Brian Silverman <[email protected]> <[email protected]>
Expand Down Expand Up @@ -230,7 +231,7 @@ Kees Cook <[email protected]> <[email protected]>
Keith Busch <[email protected]> <[email protected]>
Keith Busch <[email protected]> <[email protected]>
Kenneth W Chen <[email protected]>
Kirill Tkhai <kirill.tkhai@openvz.org> <[email protected]>
Kirill Tkhai <tkhai@ya.ru> <[email protected]>
Konstantin Khlebnikov <[email protected]> <[email protected]>
Konstantin Khlebnikov <[email protected]> <[email protected]>
Koushik <[email protected]>
Expand Down
13 changes: 13 additions & 0 deletions Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1673,6 +1673,19 @@

hlt [BUGS=ARM,SH]

hostname= [KNL] Set the hostname (aka UTS nodename).
Format: <string>
This allows setting the system's hostname during early
startup. This sets the name returned by gethostname.
Using this parameter to set the hostname makes it
possible to ensure the hostname is correctly set before
any userspace processes run, avoiding the possibility
that a process may call gethostname before the hostname
has been explicitly set, resulting in the calling
process getting an incorrect result. The string must
not exceed the maximum allowed hostname length (usually
64 characters) and will be truncated otherwise.

hpet= [X86-32,HPET] option to control HPET usage
Format: { enable (default) | disable | force |
verbose }
Expand Down
2 changes: 2 additions & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -11065,6 +11065,7 @@ F: fs/smbfs_common/

KERNEL UNIT TESTING FRAMEWORK (KUnit)
M: Brendan Higgins <[email protected]>
M: David Gow <[email protected]>
L: [email protected]
L: [email protected]
S: Maintained
Expand Down Expand Up @@ -21277,6 +21278,7 @@ M: OGAWA Hirofumi <[email protected]>
S: Maintained
F: Documentation/filesystems/vfat.rst
F: fs/fat/
F: tools/testing/selftests/filesystems/fat/

VFIO DRIVER
M: Alex Williamson <[email protected]>
Expand Down
6 changes: 0 additions & 6 deletions arch/alpha/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -497,12 +497,6 @@ smp_cpus_done(unsigned int max_cpus)
((bogosum + 2500) / (5000/HZ)) % 100);
}

int
setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

static void
send_ipi_message(const struct cpumask *to_whom, enum ipi_message_type operation)
{
Expand Down
8 changes: 0 additions & 8 deletions arch/arc/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -232,14 +232,6 @@ int __cpu_up(unsigned int cpu, struct task_struct *idle)
return 0;
}

/*
* not supported here
*/
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

/*****************************************************************************/
/* Inter Processor Interrupt Handling */
/*****************************************************************************/
Expand Down
8 changes: 0 additions & 8 deletions arch/arm/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -787,14 +787,6 @@ void panic_smp_self_stop(void)
cpu_relax();
}

/*
* not supported here
*/
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

#ifdef CONFIG_CPU_FREQ

static DEFINE_PER_CPU(unsigned long, l_p_j_ref);
Expand Down
8 changes: 0 additions & 8 deletions arch/arm64/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1078,14 +1078,6 @@ bool smp_crash_stop_failed(void)
}
#endif

/*
* not supported here
*/
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

static bool have_cpu_die(void)
{
#ifdef CONFIG_HOTPLUG_CPU
Expand Down
5 changes: 0 additions & 5 deletions arch/csky/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -243,11 +243,6 @@ void __init smp_cpus_done(unsigned int max_cpus)
{
}

int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

void csky_start_secondary(void)
{
struct mm_struct *mm = &init_mm;
Expand Down
5 changes: 0 additions & 5 deletions arch/hexagon/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -240,11 +240,6 @@ void arch_send_call_function_ipi_mask(const struct cpumask *mask)
send_ipi(mask, IPI_CALL_FUNC);
}

int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

void smp_start_cpus(void)
{
int i;
Expand Down
5 changes: 4 additions & 1 deletion arch/ia64/include/asm/mmu_context.h
Original file line number Diff line number Diff line change
Expand Up @@ -124,9 +124,12 @@ reload_context (nv_mm_context_t context)
{
unsigned long rid;
unsigned long rid_incr = 0;
unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4;
unsigned long rr0, rr1, rr2, rr3, rr4;

#ifdef CONFIG_HUGETLB_PAGE
unsigned long old_rr4;
old_rr4 = ia64_get_rr(RGN_BASE(RGN_HPAGE));
#endif
rid = context << 3; /* make space for encoding the region number */
rid_incr = 1 << 8;

Expand Down
28 changes: 14 additions & 14 deletions arch/ia64/include/uapi/asm/cmpxchg.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,24 +33,24 @@ extern void ia64_xchg_called_with_bad_pointer(void);
\
switch (size) { \
case 1: \
__xchg_result = ia64_xchg1((__u8 *)ptr, x); \
__xchg_result = ia64_xchg1((__u8 __force *)ptr, x); \
break; \
\
case 2: \
__xchg_result = ia64_xchg2((__u16 *)ptr, x); \
__xchg_result = ia64_xchg2((__u16 __force *)ptr, x); \
break; \
\
case 4: \
__xchg_result = ia64_xchg4((__u32 *)ptr, x); \
__xchg_result = ia64_xchg4((__u32 __force *)ptr, x); \
break; \
\
case 8: \
__xchg_result = ia64_xchg8((__u64 *)ptr, x); \
__xchg_result = ia64_xchg8((__u64 __force *)ptr, x); \
break; \
default: \
ia64_xchg_called_with_bad_pointer(); \
} \
__xchg_result; \
(__typeof__ (*(ptr)) __force) __xchg_result; \
})

#ifndef __KERNEL__
Expand All @@ -76,42 +76,42 @@ extern long ia64_cmpxchg_called_with_bad_pointer(void);
\
switch (size) { \
case 1: \
_o_ = (__u8) (long) (old); \
_o_ = (__u8) (long __force) (old); \
break; \
case 2: \
_o_ = (__u16) (long) (old); \
_o_ = (__u16) (long __force) (old); \
break; \
case 4: \
_o_ = (__u32) (long) (old); \
_o_ = (__u32) (long __force) (old); \
break; \
case 8: \
_o_ = (__u64) (long) (old); \
_o_ = (__u64) (long __force) (old); \
break; \
default: \
break; \
} \
switch (size) { \
case 1: \
_r_ = ia64_cmpxchg1_##sem((__u8 *) ptr, new, _o_); \
_r_ = ia64_cmpxchg1_##sem((__u8 __force *) ptr, new, _o_); \
break; \
\
case 2: \
_r_ = ia64_cmpxchg2_##sem((__u16 *) ptr, new, _o_); \
_r_ = ia64_cmpxchg2_##sem((__u16 __force *) ptr, new, _o_); \
break; \
\
case 4: \
_r_ = ia64_cmpxchg4_##sem((__u32 *) ptr, new, _o_); \
_r_ = ia64_cmpxchg4_##sem((__u32 __force *) ptr, new, _o_); \
break; \
\
case 8: \
_r_ = ia64_cmpxchg8_##sem((__u64 *) ptr, new, _o_); \
_r_ = ia64_cmpxchg8_##sem((__u64 __force *) ptr, new, _o_); \
break; \
\
default: \
_r_ = ia64_cmpxchg_called_with_bad_pointer(); \
break; \
} \
(__typeof__(old)) _r_; \
(__typeof__(old) __force) _r_; \
})

#define cmpxchg_acq(ptr, o, n) \
Expand Down
6 changes: 0 additions & 6 deletions arch/ia64/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,3 @@ smp_send_stop (void)
{
send_IPI_allbutself(IPI_CPU_STOP);
}

int
setup_profiling_timer (unsigned int multiplier)
{
return -EINVAL;
}
6 changes: 0 additions & 6 deletions arch/openrisc/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -197,12 +197,6 @@ void smp_send_stop(void)
smp_call_function(stop_this_cpu, NULL, 0);
}

/* not supported, yet */
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

void __init set_smp_cross_call(void (*fn)(const struct cpumask *, unsigned int))
{
smp_cross_call = fn;
Expand Down
7 changes: 0 additions & 7 deletions arch/parisc/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -513,10 +513,3 @@ void __cpu_die(unsigned int cpu)

pdc_cpu_rendezvous_unlock();
}

#ifdef CONFIG_PROC_FS
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}
#endif
7 changes: 0 additions & 7 deletions arch/powerpc/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1663,13 +1663,6 @@ void start_secondary(void *unused)
BUG();
}

#ifdef CONFIG_PROFILING
int setup_profiling_timer(unsigned int multiplier)
{
return 0;
}
#endif

static void __init fixup_topology(void)
{
int i;
Expand Down
6 changes: 0 additions & 6 deletions arch/riscv/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,12 +64,6 @@ bool arch_match_cpu_phys_id(int cpu, u64 phys_id)
return phys_id == cpuid_to_hartid_map(cpu);
}

/* Unsupported */
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

static void ipi_stop(void)
{
set_cpu_online(smp_processor_id(), false);
Expand Down
5 changes: 0 additions & 5 deletions arch/sparc/kernel/smp_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -174,11 +174,6 @@ void smp_call_function_interrupt(void)
irq_exit();
}

int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

void __init smp_prepare_cpus(unsigned int max_cpus)
{
int i, cpuid, extra;
Expand Down
6 changes: 0 additions & 6 deletions arch/sparc/kernel/smp_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -1186,12 +1186,6 @@ void __irq_entry smp_penguin_jailcell(int irq, struct pt_regs *regs)
preempt_enable();
}

/* /proc/profile writes can call this, don't __init it please. */
int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

void __init smp_prepare_cpus(unsigned int max_cpus)
{
}
Expand Down
2 changes: 0 additions & 2 deletions arch/x86/include/asm/apic.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,6 @@ static inline bool apic_from_smp_config(void)
#include <asm/paravirt.h>
#endif

extern int setup_profiling_timer(unsigned int);

static inline void native_apic_mem_write(u32 reg, u32 v)
{
volatile u32 *addr = (volatile u32 *)(APIC_BASE + reg);
Expand Down
5 changes: 0 additions & 5 deletions arch/x86/kernel/apic/apic.c
Original file line number Diff line number Diff line change
Expand Up @@ -1115,11 +1115,6 @@ DEFINE_IDTENTRY_SYSVEC(sysvec_apic_timer_interrupt)
set_irq_regs(old_regs);
}

int setup_profiling_timer(unsigned int multiplier)
{
return -EINVAL;
}

/*
* Local APIC start and shutdown
*/
Expand Down
6 changes: 6 additions & 0 deletions arch/x86/kernel/cpu/cacheinfo.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@
#define LVL_3 4
#define LVL_TRACE 5

/* Shared last level cache maps */
DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_llc_shared_map);

/* Shared L2 cache maps */
DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_l2c_shared_map);

struct _cache_table {
unsigned char descriptor;
char cache_type;
Expand Down
4 changes: 0 additions & 4 deletions arch/x86/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,10 +95,6 @@ EXPORT_PER_CPU_SYMBOL(cpu_core_map);
DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_die_map);
EXPORT_PER_CPU_SYMBOL(cpu_die_map);

DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_llc_shared_map);

DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_l2c_shared_map);

/* Per CPU bogomips and other parameters */
DEFINE_PER_CPU_READ_MOSTLY(struct cpuinfo_x86, cpu_info);
EXPORT_PER_CPU_SYMBOL(cpu_info);
Expand Down
7 changes: 5 additions & 2 deletions fs/autofs/autofs_i.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,6 @@ extern struct file_system_type autofs_fs_type;
*/
struct autofs_info {
struct dentry *dentry;
struct inode *inode;

int flags;

struct completion expire_complete;
Expand Down Expand Up @@ -148,6 +146,11 @@ static inline int autofs_oz_mode(struct autofs_sb_info *sbi)
task_pgrp(current) == sbi->oz_pgrp);
}

static inline bool autofs_empty(struct autofs_info *ino)
{
return ino->count < 2;
}

struct inode *autofs_get_inode(struct super_block *, umode_t);
void autofs_free_ino(struct autofs_info *);

Expand Down
2 changes: 1 addition & 1 deletion fs/autofs/expire.c
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,7 @@ static struct dentry *should_expire(struct dentry *dentry,
return NULL;
}

if (simple_empty(dentry))
if (autofs_empty(ino))
return NULL;

/* Case 2: tree mount, expire iff entire tree is not busy */
Expand Down
1 change: 1 addition & 0 deletions fs/autofs/inode.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ struct autofs_info *autofs_new_ino(struct autofs_sb_info *sbi)
INIT_LIST_HEAD(&ino->expiring);
ino->last_used = jiffies;
ino->sbi = sbi;
ino->count = 1;
}
return ino;
}
Expand Down
Loading

0 comments on commit eb5699b

Please sign in to comment.