# US 2017/0286325 A1 · Method and system for defining logical block addressing (lba) access permission in storage devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0286325 A1
- Document ID: US20170286325A1
- Status: Published application
- Kind: A1
- Application number: 15/392,273
- Filed: 2016-12-28
- Published: 2017-10-05
- Earliest claimed: 2016-03-29
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Vikram SINGH; Vamshi Krishna KOMURAVELLI; Manoj THAPLIYAL
- Web page: https://patentgrep.com/patent/US20170286325A1

## CPC

- G06F 12/1466: {Key-lock mechanism}
- G06F 13/4282: {on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247)}
- G06F 2212/1052: Security improvement
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Method, system, apparatus, and/or non-transitory computer readable medium for customizing data access permission in a data storage system. The system allows for the defining of data access permissions at a function level such that different functions in a host can have different data access permissions, for particular data stored in a storage device of the system.

## Claims

### Claim 1

A method for customizing access permission to a storage device for at least one Peripheral Component Interconnect Express (PCIe) function of a host, the method comprising:
defining, using at least one processor, at least one Logical Block Addressing (LBA) range for data in the storage device;
defining, using the at least one processor, at least one lock status associated with the at least one PCIe function associated with the defined LBA range; and
determining, using the at least one processor, an access permission for the PCIe function of the host based on the defined lock status of the PCIe function.

### Claim 2 (depends on 1)

The method as claimed in claim 1, wherein the determining the access permission for the PCIe function of the host further comprises:
receiving a data access request from the PCIe function of the host, using the storage device, the data access request including a request LBA range;
checking the lock status corresponding to the requested LBA range for the PCIe function, using the storage device;
allowing the PCIe function to access the LBA range if the lock status permits the data access, using the storage device; and
preventing the PCIe function from accessing the LBA range if the lock status does not permit the data access, using the storage device.

### Claim 3 (depends on 1)

The method as claimed in claim 1, wherein the access permission is at least one of a READ/WRITE, ONLY READ, ONLY WRITE, and NO ACCESS.

### Claim 4 (depends on 1)

The method as claimed in claim 1, wherein the lock status is stored in at least one Special Function Register (SFR) of the storage device.

### Claim 5

A storage device for customizing access permission for at least one Peripheral Component Interconnect Express (PCIe) function of a host to data stored in the storage device, the storage device comprising:
a hardware processor;
a non-volatile memory comprising computer readable instructions, which when executed by the hardware processor, cause the hardware processor to,
define at least one Logical Block Addressing (LBA) range for data in the storage device;
define at least one lock status associated with the at least one PCIe function associated with the defined LBA range; and
determine an access permission for the PCIe function of the host based on the defined lock status of the PCIe function.

### Claim 6 (depends on 5)

The storage device as claimed in claim 5, wherein the hardware processor is further caused to determine the access permission for the function of the host by:
receiving a data access request from the PCIe function of the host, the data access request including a request LBA range;
checking the lock status corresponding the requested LBA range for the PCIe function;
allowing the PCIe function to access the LBA range if the lock status permits the data access; and
preventing the PCIe function from accessing the LBA range if the lock status does not permit the data access.

### Claim 7 (depends on 5)

The storage device as claimed in claim 5, wherein the hardware processor is further caused to set at least one of a READ/WRITE, ONLY READ, ONLY WRITE, and NO ACCESS, as the access permission.

### Claim 8 (depends on 5)

The storage device as claimed in claim 5, wherein the hardware processor is further caused to store the lock status in at least one Special Function Register (SFR).

### Claim 9

A method for managing a Logical Block Addressing (LBA) range comprising: receiving, using at least one processor, at least one data access request from at least one Peripheral Component Interconnect Express (PCIe) function associated with a host, the data access request including a desired LBA range and a desired access type;
verifying, using the at least one processor, the data access request based on a LBA range table record of a LBA range table associated with the desired LBA range, the PCIe function, and the host; and
permitting, using the at least one processor, the data access request based on results of the verifying.

### Claim 10

The method as claimed in clam 9, wherein the verifying further includes:
determining, using the at least one processor, whether the LBA range table record includes at least one lock status array associated with the PCIe function and the host; retrieving, using the at least one processor, the lock status array values associated with the PCIe function and the host based on results of the determining; and
determining, using the at least one processor, an access permission status for the PCIe function based on results of the retrieving.

### Claim 11 (depends on 9)

The method as claimed in claim 9, wherein the LBA range table includes a plurality of LBA range records, each of the LBA range records associated with a desired LBA range.

### Claim 12 (depends on 9)

The method as claimed in claim 9, wherein
the at least one data access request is a plurality of data access requests; and
the plurality of data access requests are transmitted by a plurality of hosts.

### Claim 13 (depends on 11)

The method as claimed in claim 11, wherein the plurality of LBA range records each include at least one lock status array associated with a plurality of PCIe functions associated with the host.
