.. | .. |
---|
515 | 515 | nfs4_init_seqid_counter(&sp->so_seqid); |
---|
516 | 516 | atomic_set(&sp->so_count, 1); |
---|
517 | 517 | INIT_LIST_HEAD(&sp->so_lru); |
---|
518 | | - seqcount_init(&sp->so_reclaim_seqcount); |
---|
| 518 | + seqlock_init(&sp->so_reclaim_seqlock); |
---|
519 | 519 | mutex_init(&sp->so_delegreturn_mutex); |
---|
520 | 520 | return sp; |
---|
521 | 521 | } |
---|
.. | .. |
---|
1583 | 1583 | * recovering after a network partition or a reboot from a |
---|
1584 | 1584 | * server that doesn't support a grace period. |
---|
1585 | 1585 | */ |
---|
| 1586 | +#ifdef CONFIG_PREEMPT_RT_FULL |
---|
| 1587 | + write_seqlock(&sp->so_reclaim_seqlock); |
---|
| 1588 | +#else |
---|
| 1589 | + write_seqcount_begin(&sp->so_reclaim_seqlock.seqcount); |
---|
| 1590 | +#endif |
---|
1586 | 1591 | spin_lock(&sp->so_lock); |
---|
1587 | | - raw_write_seqcount_begin(&sp->so_reclaim_seqcount); |
---|
1588 | 1592 | restart: |
---|
1589 | 1593 | list_for_each_entry(state, &sp->so_states, open_states) { |
---|
1590 | 1594 | if (!test_and_clear_bit(ops->state_flag_bit, &state->flags)) |
---|
.. | .. |
---|
1671 | 1675 | spin_lock(&sp->so_lock); |
---|
1672 | 1676 | goto restart; |
---|
1673 | 1677 | } |
---|
1674 | | - raw_write_seqcount_end(&sp->so_reclaim_seqcount); |
---|
1675 | 1678 | spin_unlock(&sp->so_lock); |
---|
| 1679 | +#ifdef CONFIG_PREEMPT_RT_FULL |
---|
| 1680 | + write_sequnlock(&sp->so_reclaim_seqlock); |
---|
| 1681 | +#else |
---|
| 1682 | + write_seqcount_end(&sp->so_reclaim_seqlock.seqcount); |
---|
| 1683 | +#endif |
---|
1676 | 1684 | return 0; |
---|
1677 | 1685 | out_err: |
---|
1678 | 1686 | nfs4_put_open_state(state); |
---|
1679 | | - spin_lock(&sp->so_lock); |
---|
1680 | | - raw_write_seqcount_end(&sp->so_reclaim_seqcount); |
---|
1681 | | - spin_unlock(&sp->so_lock); |
---|
| 1687 | +#ifdef CONFIG_PREEMPT_RT_FULL |
---|
| 1688 | + write_sequnlock(&sp->so_reclaim_seqlock); |
---|
| 1689 | +#else |
---|
| 1690 | + write_seqcount_end(&sp->so_reclaim_seqlock.seqcount); |
---|
| 1691 | +#endif |
---|
1682 | 1692 | return status; |
---|
1683 | 1693 | } |
---|
1684 | 1694 | |
---|