Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5cf885d0 authored by Jiri Kosina's avatar Jiri Kosina Committed by Linus Torvalds
Browse files

[PATCH] CRIS: TLB handling: turn local_save_flags() + local_irq_disable() into local_irq_save()



TLB handling for CRIS contains local_irq_disable() after local_save_flags().
Turn this into local_irq_save().

Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
Cc: Mikael Starvik <starvik@axis.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8447157a
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -42,8 +42,7 @@ flush_tlb_all(void)
	 * in the same 4-way entry group. details.. 
	 */

	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);
	for(i = 0; i < NUM_TLB_ENTRIES; i++) {
		*R_TLB_SELECT = ( IO_FIELD(R_TLB_SELECT, index, i) );
		*R_TLB_HI = ( IO_FIELD(R_TLB_HI, page_id, INVALID_PAGEID ) |
@@ -78,8 +77,7 @@ flush_tlb_mm(struct mm_struct *mm)
	 * global pages. is it worth the extra I/O ? 
	 */

	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);
	for(i = 0; i < NUM_TLB_ENTRIES; i++) {
		*R_TLB_SELECT = IO_FIELD(R_TLB_SELECT, index, i);
		if (IO_EXTRACT(R_TLB_HI, page_id, *R_TLB_HI) == page_id) {
@@ -118,8 +116,7 @@ flush_tlb_page(struct vm_area_struct *vma,
	 * and the virtual address requested 
	 */

	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);
	for(i = 0; i < NUM_TLB_ENTRIES; i++) {
		unsigned long tlb_hi;
		*R_TLB_SELECT = IO_FIELD(R_TLB_SELECT, index, i);
+3 −6
Original line number Diff line number Diff line
@@ -54,8 +54,7 @@ __flush_tlb_all(void)
	 * Mask with 0xf so similar TLB entries aren't written in the same 4-way
	 * entry group.
	 */
	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);

	for (mmu = 1; mmu <= 2; mmu++) {
		SUPP_BANK_SEL(mmu); /* Select the MMU */
@@ -92,8 +91,7 @@ __flush_tlb_mm(struct mm_struct *mm)
		return;

	/* Mark the TLB entries that match the page_id as invalid. */
	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);

	for (mmu = 1; mmu <= 2; mmu++) {
		SUPP_BANK_SEL(mmu);
@@ -140,8 +138,7 @@ __flush_tlb_page(struct vm_area_struct *vma, unsigned long addr)
	 * Invalidate those TLB entries that match both the mm context and the
	 * requested virtual address.
	 */
	local_save_flags(flags);
	local_irq_disable();
	local_irq_save(flags);

	for (mmu = 1; mmu <= 2; mmu++) {
		SUPP_BANK_SEL(mmu);