Skip to content

Commit d306e6b

Browse files
authored
Merge pull request torvalds#210 from zandrey/5.10.x+fslc
Update 5.10.x+fslc to v5.10.5 and v5.10.6
2 parents 3494f66 + 3403134 commit d306e6b

File tree

126 files changed

+1071
-791
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+1071
-791
lines changed

Documentation/devicetree/bindings/rtc/rtc.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,11 @@ properties:
6363
description:
6464
Enables wake up of host system on alarm.
6565

66+
reset-source:
67+
$ref: /schemas/types.yaml#/definitions/flag
68+
description:
69+
The RTC is able to reset the machine.
70+
6671
additionalProperties: true
6772

6873
...

Documentation/gpu/todo.rst

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,24 @@ Contact: Daniel Vetter, Noralf Tronnes
273273

274274
Level: Advanced
275275

276+
Garbage collect fbdev scrolling acceleration
277+
--------------------------------------------
278+
279+
Scroll acceleration is disabled in fbcon by hard-wiring p->scrollmode =
280+
SCROLL_REDRAW. There's a ton of code this will allow us to remove:
281+
- lots of code in fbcon.c
282+
- a bunch of the hooks in fbcon_ops, maybe the remaining hooks could be called
283+
directly instead of the function table (with a switch on p->rotate)
284+
- fb_copyarea is unused after this, and can be deleted from all drivers
285+
286+
Note that not all acceleration code can be deleted, since clearing and cursor
287+
support is still accelerated, which might be good candidates for further
288+
deletion projects.
289+
290+
Contact: Daniel Vetter
291+
292+
Level: Intermediate
293+
276294
idr_init_base()
277295
---------------
278296

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# SPDX-License-Identifier: GPL-2.0
22
VERSION = 5
33
PATCHLEVEL = 10
4-
SUBLEVEL = 4
4+
SUBLEVEL = 6
55
EXTRAVERSION =
66
NAME = Kleptomaniac Octopus
77

arch/ia64/mm/init.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ virtual_memmap_init(u64 start, u64 end, void *arg)
536536

537537
if (map_start < map_end)
538538
memmap_init_zone((unsigned long)(map_end - map_start),
539-
args->nid, args->zone, page_to_pfn(map_start),
539+
args->nid, args->zone, page_to_pfn(map_start), page_to_pfn(map_end),
540540
MEMINIT_EARLY, NULL, MIGRATE_MOVABLE);
541541
return 0;
542542
}
@@ -546,7 +546,7 @@ memmap_init (unsigned long size, int nid, unsigned long zone,
546546
unsigned long start_pfn)
547547
{
548548
if (!vmem_map) {
549-
memmap_init_zone(size, nid, zone, start_pfn,
549+
memmap_init_zone(size, nid, zone, start_pfn, start_pfn + size,
550550
MEMINIT_EARLY, NULL, MIGRATE_MOVABLE);
551551
} else {
552552
struct page *start;

arch/powerpc/kernel/irq.c

Lines changed: 4 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -102,14 +102,6 @@ static inline notrace unsigned long get_irq_happened(void)
102102
return happened;
103103
}
104104

105-
static inline notrace int decrementer_check_overflow(void)
106-
{
107-
u64 now = get_tb();
108-
u64 *next_tb = this_cpu_ptr(&decrementers_next_tb);
109-
110-
return now >= *next_tb;
111-
}
112-
113105
#ifdef CONFIG_PPC_BOOK3E
114106

115107
/* This is called whenever we are re-enabling interrupts
@@ -142,35 +134,6 @@ notrace unsigned int __check_irq_replay(void)
142134
trace_hardirqs_on();
143135
trace_hardirqs_off();
144136

145-
/*
146-
* We are always hard disabled here, but PACA_IRQ_HARD_DIS may
147-
* not be set, which means interrupts have only just been hard
148-
* disabled as part of the local_irq_restore or interrupt return
149-
* code. In that case, skip the decrementr check becaus it's
150-
* expensive to read the TB.
151-
*
152-
* HARD_DIS then gets cleared here, but it's reconciled later.
153-
* Either local_irq_disable will replay the interrupt and that
154-
* will reconcile state like other hard interrupts. Or interrupt
155-
* retur will replay the interrupt and in that case it sets
156-
* PACA_IRQ_HARD_DIS by hand (see comments in entry_64.S).
157-
*/
158-
if (happened & PACA_IRQ_HARD_DIS) {
159-
local_paca->irq_happened &= ~PACA_IRQ_HARD_DIS;
160-
161-
/*
162-
* We may have missed a decrementer interrupt if hard disabled.
163-
* Check the decrementer register in case we had a rollover
164-
* while hard disabled.
165-
*/
166-
if (!(happened & PACA_IRQ_DEC)) {
167-
if (decrementer_check_overflow()) {
168-
local_paca->irq_happened |= PACA_IRQ_DEC;
169-
happened |= PACA_IRQ_DEC;
170-
}
171-
}
172-
}
173-
174137
if (happened & PACA_IRQ_DEC) {
175138
local_paca->irq_happened &= ~PACA_IRQ_DEC;
176139
return 0x900;
@@ -186,6 +149,9 @@ notrace unsigned int __check_irq_replay(void)
186149
return 0x280;
187150
}
188151

152+
if (happened & PACA_IRQ_HARD_DIS)
153+
local_paca->irq_happened &= ~PACA_IRQ_HARD_DIS;
154+
189155
/* There should be nothing left ! */
190156
BUG_ON(local_paca->irq_happened != 0);
191157

@@ -229,18 +195,6 @@ void replay_soft_interrupts(void)
229195
if (IS_ENABLED(CONFIG_PPC_IRQ_SOFT_MASK_DEBUG))
230196
WARN_ON_ONCE(mfmsr() & MSR_EE);
231197

232-
if (happened & PACA_IRQ_HARD_DIS) {
233-
/*
234-
* We may have missed a decrementer interrupt if hard disabled.
235-
* Check the decrementer register in case we had a rollover
236-
* while hard disabled.
237-
*/
238-
if (!(happened & PACA_IRQ_DEC)) {
239-
if (decrementer_check_overflow())
240-
happened |= PACA_IRQ_DEC;
241-
}
242-
}
243-
244198
/*
245199
* Force the delivery of pending soft-disabled interrupts on PS3.
246200
* Any HV call will have this side effect.
@@ -345,6 +299,7 @@ notrace void arch_local_irq_restore(unsigned long mask)
345299
if (IS_ENABLED(CONFIG_PPC_IRQ_SOFT_MASK_DEBUG))
346300
WARN_ON_ONCE(!(mfmsr() & MSR_EE));
347301
__hard_irq_disable();
302+
local_paca->irq_happened |= PACA_IRQ_HARD_DIS;
348303
} else {
349304
/*
350305
* We should already be hard disabled here. We had bugs

arch/powerpc/kernel/time.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -552,14 +552,11 @@ void timer_interrupt(struct pt_regs *regs)
552552
struct pt_regs *old_regs;
553553
u64 now;
554554

555-
/* Some implementations of hotplug will get timer interrupts while
556-
* offline, just ignore these and we also need to set
557-
* decrementers_next_tb as MAX to make sure __check_irq_replay
558-
* don't replay timer interrupt when return, otherwise we'll trap
559-
* here infinitely :(
555+
/*
556+
* Some implementations of hotplug will get timer interrupts while
557+
* offline, just ignore these.
560558
*/
561559
if (unlikely(!cpu_online(smp_processor_id()))) {
562-
*next_tb = ~(u64)0;
563560
set_dec(decrementer_max);
564561
return;
565562
}

arch/powerpc/platforms/powernv/opal.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,7 @@ int opal_hmi_exception_early2(struct pt_regs *regs)
731731
return 1;
732732
}
733733

734-
/* HMI exception handler called in virtual mode during check_irq_replay. */
734+
/* HMI exception handler called in virtual mode when irqs are next enabled. */
735735
int opal_handle_hmi_exception(struct pt_regs *regs)
736736
{
737737
/*

arch/powerpc/sysdev/mpic_msgr.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ static int mpic_msgr_probe(struct platform_device *dev)
191191

192192
/* IO map the message register block. */
193193
of_address_to_resource(np, 0, &rsrc);
194-
msgr_block_addr = ioremap(rsrc.start, resource_size(&rsrc));
194+
msgr_block_addr = devm_ioremap(&dev->dev, rsrc.start, resource_size(&rsrc));
195195
if (!msgr_block_addr) {
196196
dev_err(&dev->dev, "Failed to iomap MPIC message registers");
197197
return -EFAULT;

arch/s390/kernel/entry.S

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,7 @@ ENTRY(system_call)
406406
mvc __PT_PSW(16,%r11),__LC_SVC_OLD_PSW
407407
mvc __PT_INT_CODE(4,%r11),__LC_SVC_ILC
408408
stg %r14,__PT_FLAGS(%r11)
409+
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
409410
ENABLE_INTS
410411
.Lsysc_do_svc:
411412
# clear user controlled register to prevent speculative use
@@ -422,7 +423,6 @@ ENTRY(system_call)
422423
jnl .Lsysc_nr_ok
423424
slag %r8,%r1,3
424425
.Lsysc_nr_ok:
425-
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
426426
stg %r2,__PT_ORIG_GPR2(%r11)
427427
stg %r7,STACK_FRAME_OVERHEAD(%r15)
428428
lg %r9,0(%r8,%r10) # get system call add.
@@ -712,8 +712,8 @@ ENTRY(pgm_check_handler)
712712
mvc __THREAD_per_address(8,%r14),__LC_PER_ADDRESS
713713
mvc __THREAD_per_cause(2,%r14),__LC_PER_CODE
714714
mvc __THREAD_per_paid(1,%r14),__LC_PER_ACCESS_ID
715-
6: RESTORE_SM_CLEAR_PER
716-
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
715+
6: xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
716+
RESTORE_SM_CLEAR_PER
717717
larl %r1,pgm_check_table
718718
llgh %r10,__PT_INT_CODE+2(%r11)
719719
nill %r10,0x007f
@@ -734,8 +734,8 @@ ENTRY(pgm_check_handler)
734734
# PER event in supervisor state, must be kprobes
735735
#
736736
.Lpgm_kprobe:
737-
RESTORE_SM_CLEAR_PER
738737
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
738+
RESTORE_SM_CLEAR_PER
739739
lgr %r2,%r11 # pass pointer to pt_regs
740740
brasl %r14,do_per_trap
741741
j .Lpgm_return
@@ -777,10 +777,10 @@ ENTRY(io_int_handler)
777777
stmg %r8,%r9,__PT_PSW(%r11)
778778
mvc __PT_INT_CODE(12,%r11),__LC_SUBCHANNEL_ID
779779
xc __PT_FLAGS(8,%r11),__PT_FLAGS(%r11)
780+
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
780781
TSTMSK __LC_CPU_FLAGS,_CIF_IGNORE_IRQ
781782
jo .Lio_restore
782783
TRACE_IRQS_OFF
783-
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
784784
.Lio_loop:
785785
lgr %r2,%r11 # pass pointer to pt_regs
786786
lghi %r3,IO_INTERRUPT
@@ -980,10 +980,10 @@ ENTRY(ext_int_handler)
980980
mvc __PT_INT_PARM(4,%r11),__LC_EXT_PARAMS
981981
mvc __PT_INT_PARM_LONG(8,%r11),0(%r1)
982982
xc __PT_FLAGS(8,%r11),__PT_FLAGS(%r11)
983+
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
983984
TSTMSK __LC_CPU_FLAGS,_CIF_IGNORE_IRQ
984985
jo .Lio_restore
985986
TRACE_IRQS_OFF
986-
xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15)
987987
lgr %r2,%r11 # pass pointer to pt_regs
988988
lghi %r3,EXT_INTERRUPT
989989
brasl %r14,do_IRQ

0 commit comments

Comments
 (0)