diff --git a/Makefile b/Makefile index b1800d3ba0b5..5d699d055995 100644 --- a/Makefile +++ b/Makefile @@ -403,7 +403,7 @@ KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ KBUILD_AFLAGS_KERNEL := KBUILD_CFLAGS_KERNEL := -KBUILD_AFLAGS := -D__ASSEMBLY__ +KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE KBUILD_AFLAGS_MODULE := -DMODULE KBUILD_CFLAGS_MODULE := -DMODULE KBUILD_LDFLAGS_MODULE := -T $(srctree)/scripts/module-common.lds diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c index 1f82c370d72b..657e13ed4b5d 100644 --- a/fs/nfs/nfs4state.c +++ b/fs/nfs/nfs4state.c @@ -1459,7 +1459,11 @@ static int nfs4_reclaim_open_state(struct nfs4_state_owner *sp, const struct nfs * recovering after a network partition or a reboot from a * server that doesn't support a grace period. */ +#ifdef CONFIG_PREEMPT_RT_FULL write_seqlock(&sp->so_reclaim_seqlock); +#else + write_seqcount_begin(&sp->so_reclaim_seqlock.seqcount); +#endif spin_lock(&sp->so_lock); restart: list_for_each_entry(state, &sp->so_states, open_states) { @@ -1529,11 +1533,19 @@ static int nfs4_reclaim_open_state(struct nfs4_state_owner *sp, const struct nfs goto restart; } spin_unlock(&sp->so_lock); +#ifdef CONFIG_PREEMPT_RT_FULL write_sequnlock(&sp->so_reclaim_seqlock); +#else + write_seqcount_end(&sp->so_reclaim_seqlock.seqcount); +#endif return 0; out_err: nfs4_put_open_state(state); +#ifdef CONFIG_PREEMPT_RT_FULL write_sequnlock(&sp->so_reclaim_seqlock); +#else + write_seqcount_end(&sp->so_reclaim_seqlock.seqcount); +#endif return status; } diff --git a/localversion-rt b/localversion-rt index ad3da1bcab7e..0efe7ba1930e 100644 --- a/localversion-rt +++ b/localversion-rt @@ -1 +1 @@ --rt4 +-rt5