erasure-code isa-l: remove duplicated lines (fix warning)

06a245a added a section def to assembly files; I added it twice to
this file.  There's no damage, but a compiler warning (on machines with
yasm installed)

Signed-off-by: Dan Mick <dan.mick@redhat.com>
Merge pull request #2960 from ceph/wip-10114-fix-warning

erasure-code isa-l: remove duplicated lines (fix warning)

Reviewed-by: Sage Weil <sage@redhat.com>
FileJournal: Add ssd discard for journal which using ssd disk as journal.

Journal is like a ring buffer. After data wrote to media disk, journal
can overwrite. But for those data, ssd dont't know it's nouse and can
remove. So add discard to tell ssd to remove those data.
This maybe not increase the performance. But it can increase the
lifetime of ssd.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
FileJournal: add journal_discard to control ssd whether support discard

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
ReplicatedPG: fail a non-blocking flush if the object is being scrubbed

Fixes: #8011
Backport: firefly, giant
Signed-off-by: Samuel Just <sjust@redhat.com>
ReplicatedPG::scan_range: an object can disappear between the list and the attr get

The first item in the range is often last_backfill, upon which writes
can be occuring.  It's trimmed off on the primary side anyway.

Fixes: 10150
Backport: dumpling, firefly, giant
Signed-off-by: Samuel Just <sjust@redhat.com>
PGLog: include rollback_info_trimmed_to in (read|write)_log

Fixes: #10157
Backport: firefly, giant
Signed-off-by: Samuel Just <sjust@redhat.com>
PGBackend: rename clear_state to clear_recovery_state

This is called when we complete recovery, and does not clear
all state.  clear_recovery_state is clearer.

Signed-off-by: Samuel Just <sjust@redhat.com>
ReplicatedPG: always take recovery_read_lock for recovery

Signed-off-by: Samuel Just <sjust@redhat.com>
osd/: update peer_missing and local missing if we write a degraded object

Signed-off-by: Samuel Just <sjust@redhat.com>
osd/: don't block writes on degraded objects

Signed-off-by: Samuel Just <sjust@redhat.com>
PG::purge_strays: purge peer_missing as well

Signed-off-by: Samuel Just <sjust@redhat.com>
PG::proc_master_log: assume les and history.les from log source

Otherwise, we might later go peered (not active) and not distribute
a non-0 last_epoch_started.  This should be safe as the log recipient
will have a last_update reflecting that interval as well.

Signed-off-by: Samuel Just <sjust@redhat.com>
PG: move most of all_activated_and_commited into the AllReplicasActivated handler

It's confusing to have that logic split up so much.

Signed-off-by: Samuel Just <sjust@redhat.com>
osd/: go "peered" instead of "active" when < min_size

In the case of a replicated pool, the pg will transition to "peered"
rather than "active", where it can perform backfill bringing itself up
to min_size peers.  To that end, most operations now require
is_peered rather than is_active (OSDOps being the primary exception).
Also, rather than using the query_epoch on the activation message as the
activation epoch (for last_epoch_started) on the replica, we instead
use the last_epoch_started in the info sent by the primary.  This
allows the primary to not advance last_epoch_started past the last
known actual activation.  This will prevent later peering epochs from
requiring the last_update from a peered epoch to go active (might be
divergent).  We do allow scrubbing while peered.

Fixes: #7862
Signed-off-by: Samuel Just <sam.just@inktank.com>
Merge remote-tracking branches 'athanatos/wip-10059', 'athanatos/wip-10150', 'athanatos/wip-10157', 'athanatos/wip-7861', 'athanatos/wip-7862' and 'athanatos/wip-8011' into wip-sam-working