# Samsung SSD 850 Pro dive blacklisted in kernel for Trim?

## dman777

I was thinking about buying a Samsung SSD 850 Pro dive. But after doing some research, it uses `que` trim which has issues in Linux...where Linux supports regular trim, not the que trim. 

Am I looking at this right? Is the trim still blacklisted for  Samsung SSD 850 Pro dive? Or is this only for Raids?

https://github.com/torvalds/linux/blob/e64f638483a21105c7ce330d543fa1f1c35b5bc7/drivers/ata/libata-core.c#L4238

```
static const struct ata_blacklist_entry ata_device_blacklist [] = {

   { "Samsung SSD 8*",      NULL,   ATA_HORKAGE_NO_NCQ_TRIM | ATA_HORKAGE_ZERO_AFTER_TRIM, },
```

----------

## snkmoorthy

I use this drive, without 'discard' mount option, without any issues for about a year now, if discard is enabled, system becomes laggy when doing IO.

----------

## frostschutz

Trim works fine unqueued. There have been so many NCQ related bugs that I disable it altogether (libata.force=noncq) and no performance issues because of it.

I don't use discard option, fstrim on a weekly/monthly basis is fine. Doesn't affect I/O this way either.

----------

## dman777

 *snkmoorthy wrote:*   

> I use this drive, without 'discard' mount option, without any issues for about a year now, if discard is enabled, system becomes laggy when doing IO.

 

Strange, how would discard have a effect if it is blacklisted in the kernel?

----------

## dman777

 *frostschutz wrote:*   

> Trim works fine unqueued. There have been so many NCQ related bugs that I disable it altogether (libata.force=noncq) and no performance issues because of it.
> 
> I don't use discard option, fstrim on a weekly/monthly basis is fine. Doesn't affect I/O this way either.

 

Is it possible to enable trim with discard and have it non queued? 

Also, currently I use deadline for /sys/block/sda/queue/scheduler....is trim being queued(for SSDs in general....not any specific model)?

----------

## comio

 *dman777 wrote:*   

> I was thinking about buying a Samsung SSD 850 Pro dive. But after doing some research, it uses `que` trim which has issues in Linux...where Linux supports regular trim, not the que trim. 
> 
> Am I looking at this right? Is the trim still blacklisted for  Samsung SSD 850 Pro dive? Or is this only for Raids?
> 
> https://github.com/torvalds/linux/blob/e64f638483a21105c7ce330d543fa1f1c35b5bc7/drivers/ata/libata-core.c#L4238
> ...

 

Read this:

https://en.wikipedia.org/wiki/Trim_(computing)#Shortcomings

ciao

luigi

[Moderator edit: fixed link.  Automatic linking does not consider parentheses as part of the URL.]

----------

## dman777

Good read, thanks!

Question.... with the discard option, does non queue trim run on the Samsung 850? Or is all trim blacklisted with 

```

static const struct ata_blacklist_entry ata_device_blacklist [] = { 

   { "Samsung SSD 8*",      NULL,   ATA_HORKAGE_NO_NCQ_TRIM | ATA_HORKAGE_ZERO_AFTER_TRIM, },

```

----------

