Go Quiz exercise, part of Gophercises
Your function returns error, but actually you don't return it and exit in the function body when opening the file:
func getFileContent(filename string) (records[][] string, err error) {
        fd, err := os.Open(filename)

        if err != nil {
                exit(&quot;Problem with opening the file&quot;)
        }

        reader := csv.NewReader(fd)
        return reader.ReadAll()
}

From the point of error handling it will be more consistent to return error:
fd, err := os.Open(filename)
if err != nil {
   return nil, err
}

The file was open, but not closed: defer fd.Close().
I don't remember flag package, but if it is not ensure the presence of parameter you need to check filename != nil:
records, err := getFileContent(*fileName)

Here you have created new goroutine, but returns the result via global variable correctAnswers:
done := make(chan bool)
go provideQuestions(records, done)

It stops working if you decide to improve your game and allow more than one person to play on the same time. You will have race condition on this variable. Much better return the value from goroutine using channel.
You already have such channel - done, just change its type to channel of int and return the number of correct answers using it.